Straßenliste verschönerung

Die Straßenliste im Ortsteilmodus wird geöffnet gelassen, wenn man die
Objektliste schließt
This commit is contained in:
HuskyTeufel
2021-04-15 14:26:50 +02:00
parent 9a58ecc3c2
commit bf076ad6c1

View File

@@ -20,6 +20,7 @@ namespace SanSystem
public partial class frmStrassenList : Form
{
StreetListSettings streetListSetting = new StreetListSettings();
string aktuallStreetName = string.Empty;
/// <summary>
///
/// </summary>
@@ -47,22 +48,37 @@ namespace SanSystem
private void buildSortedSteetList()
{
List<string> ortteile = Datenbank.Instance.loadedProjekt.Objekte.Select(x => x.OrtName).Distinct().ToList();
int aktuellOpened = -1;
bool aktuelleStrasse = false;
foreach (string ort in ortteile)
{
List<string> strassen = Datenbank.Instance.loadedProjekt.Objekte.Where(y => y.OrtName.Equals(ort)).Select(x => x.StrasseName).Distinct().ToList();
TreeNode[] streetnodes = new TreeNode[strassen.Count];
for(int i = 0; i < strassen.Count; i++)
{
streetnodes[i] = new TreeNode();
Tuple<int, int> x = getStatikFromStreet(strassen[i]);
streetnodes[i].Text = string.Format("{0} ({1} / {2})", strassen[i], x.Item1, x.Item2);
if (strassen[i].Equals(aktuallStreetName))
aktuelleStrasse = true;
streetnodes[i].Tag = strassen[i];
}
TreeNode node = new TreeNode(ort, streetnodes);
trv_street.Nodes.Add(node);
int looper = trv_street.Nodes.Add(node);
if(aktuelleStrasse)
{
aktuelleStrasse = false;
aktuellOpened = looper;
}
}
if(aktuellOpened != -1)
{
trv_street.Nodes[aktuellOpened].ExpandAll();
}
}
private Tuple<int,int> getStatikFromStreet(string strassename)
{
@@ -151,7 +167,7 @@ namespace SanSystem
if ((sender as TreeView).SelectedNode == null) return;
string selectedStreetName = (string)(sender as TreeView).SelectedNode.Tag;
if (selectedStreetName.Equals("")) return;
aktuallStreetName = selectedStreetName;
frmObjekteList frmObjekteList = new frmObjekteList(selectedStreetName);
frmObjekteList.MdiParent = this.MdiParent;
frmObjekteList.FormClosed += FrmObjekt_FormClosed;