2016-08-02 13 views
0

Ich versuche, Elemente in einer Listenansicht von Gruppen anzuzeigen, und hier ist, was ich meine. Ich habe einem Formular eine Listenansicht hinzugefügt und in der Listenansicht habe ich zwei Gruppen hinzugefügt, dann habe ich Elemente hinzugefügt und für die Elemente einen Gruppennamen gewählt.So zeigen Sie Elemente aus einer Listview-Gruppe an, wenn sie aus der Combobox ausgewählt wurden

Jetzt in einer Combox-Box, die ich in das selectindexexchanged-Ereignis füge ich dies.

if (comboBox1.Text == "group1") 
     { 
      foreach (string itemname1 in listimages.Groups[0].Items) 
      { 
       string currentitem = itemname1; 
      } 


     } 

nichts funktioniert so, um herauszufinden, ich versuche, was ich nicht richtig mache.

Die Elemente in der Combobox haben dieselben Elemente wie Gruppennamen.

Jede Hilfe wäre großartig.

Antwort

0

Ich konnte es herausfinden. Hier ist, was ich getan habe

Zuerst auf der Listenansicht habe ich Gruppen hinzugefügt, dann habe ich Elemente hinzugefügt und auf die Elemente in der Tag-Eigenschaft, die ich in die Gruppe legte ich wollte es verknüpft werden.

In der ComboBox habe ich Gruppennamen eingegeben, als ich sie in die Listenansicht eingefügt habe.

Dann habe ich diesen Code:

   private void frmImageSelection_Load(object sender, EventArgs e) 
    { 

     items = new ListViewItem[listimages.Items.Count]; 
     listimages.Items.CopyTo(items, 0); 
     ShowGroup(0); 
     cmbgroups.SelectedIndex = 0; 
    } 


      private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) 
    { 

     ShowGroup(cmbgroups.SelectedIndex); 
    } 

    void ShowGroup(int index) 
    { 
     if (index == 0) // all 
     { 
      listimages.Items.Clear(); 
      listimages.Items.AddRange(items); 
     } 
     else 
     { 
      listimages.Items.Clear(); 
      foreach (ListViewItem item in items) 
       if (listimages.Groups[index].Name.Equals(item.Tag)) 
        listimages.Items.Add(item); 
     } 
     foreach (ListViewItem item in listimages.Items) 
      item.Group = listimages.Groups[index]; 
    } 

    ListViewItem[] items; 

Wie auch immer, wenn Sie nicht sicher sind, ich sind froh, Sie fallen mir zu helfen einfach eine Nachricht in meinem Posteingang oder so etwas.

Verwandte Themen