2009-07-26 13 views
0

Was mache ich hier falsch? sei sanft.CheckedListBox und EventArgs

Für CheckedListBox, kann ich die Elemente einfach aktualisieren, indem Sie mit:

private void button3_Click(object sender, EventArgs e) 
{ 
    checkedListBox4.Items.Add("whatever"); //or use an object 
} 

funktioniert gut, aber was soll ich tun, um innerhalb einer anderen Klasse der CheckedListItem eine Reihe von Artikeln aus Methode senden

So , habe ich eine andere class something:form1 up, die einen Delegierten hat, die sich auf ein Verfahren verweist, das nenne ich \

Der Delegierte aufrufen ruft \ diese Weise ruft:

public delegate void m_del(List<DirectoryInfo> ww, string rr); 

irgendwo im Code:

m_del methtouse = new m_del(listme) 

public void listme(List<DirectoryInfo> fi, string mypath) 
{ 
    foreach (DirectoryInfo j in fi) 
    { 
     mypath = null; //mypath used by another method 
     try 
     { 
      NewCheckboxListItem cb1 = new NewCheckboxListItem(); 
      cb1.Tag = j.Name; 
      cb1.Text = j.Name; 
      checkedListBox4.Items.Add(cb1); 
     } 
     catch (Exception w) 
     { 
      MessageBox.Show(w.Message); 
     } 
    } 
}       

public class NewCheckboxListItem 
{ 
    // define a text and 
    // a tag value 

    public string Text; 
    public string Tag; 

    // override ToString(); this 
    // is what the checkbox control 
    // displays as text 
    public override string ToString() 
    { 
     return this.Text; 
    } 
} 

methtouse(a List<DirectoryInfo> ww, a string rr) 
{}   

Was passiert, ist die Artikelsammlung im checkedListBox4 aktualisiert und hat so viele Wert, wie ich es schicken, aber es wird nicht das Element ziehen \ zeigen die Artikel

ich versucht habe, ein checkedListBox4_datavaluememberchanged Verfahren und ein paar anderen checkedListBox4_changed Ereignisse fordert aber noch einmal die Elemente in der Auflistung aktualisiert, aber sie erscheinen nicht in den CheckedListBox

denke ich, es ist etwas mit ihm zu tun nicht eventargs mit

Gibt es eine einfache Möglichkeit, eine Seite an Seite Vergleich aller Attribute, Ereignisse, Eigenschaften eines erfolgreichen CheckedListBox mit dem einer erfolglosen CheckedListBox (programmatisch) zu tun

Hinweis: die Klasse erbt von form1 wo die CheckedListBox befindet, und die Methoden der Zugriff auf öffentliche eingestellt.

+1

Fügen Sie "this.Show()" am Ende der Methode hinzu. Siehst du es jetzt? –

+0

danke aber das gleiche Problem - Daten erscheinen im inneren Array, aber nicht auf dem Bildschirm --- danke für versuchen, mt zu helfen, obwohl – Gazza

Antwort

Verwandte Themen