ListBox.ObjectCollection.Add(Object) Methode

Definition

Fügt der Liste von Elementen für eine ListBox ein Element hinzu.

public:
 int Add(System::Object ^ item);
public int Add (object item);
member this.Add : obj -> int
Public Function Add (item As Object) As Integer

Parameter

item
Object

Ein Objekt, das das der Auflistung hinzuzufügende Element darstellt.

Gibt zurück

Der nullbasierte Index des Elements in der Auflistung oder -1, wenn BeginUpdate() aufgerufen wurde.

Ausnahmen

Der verfügbare Speicherplatz reicht nicht aus, um der Liste ein neues Element hinzuzufügen.

item ist null.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Sie ein ListBox Steuerelement erstellen, das mehrere Elemente in Spalten anzeigt und mehrere Elemente in der Liste des Steuerelements ausgewählt haben kann. Der Code für das Beispiel fügt mithilfe der ListBox -Methode ListBox.ObjectCollection der Add -Klasse 50 Elemente hinzu und wählt dann mithilfe der -Methode drei Elemente aus der SetSelected Liste aus. Der Code zeigt dann Werte aus der ListBox.SelectedObjectCollection Auflistung (über die SelectedItems -Eigenschaft) und die ListBox.SelectedIndexCollection (über die SelectedIndices -Eigenschaft) an. Dieses Beispiel erfordert, dass sich der Code in befindet und von aufgerufen Formwird.

void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   
   // Create an instance of the ListBox.
   ListBox^ listBox1 = gcnew ListBox;
   
   // Set the size and location of the ListBox.
   listBox1->Size = System::Drawing::Size( 200, 100 );
   listBox1->Location = System::Drawing::Point( 10, 10 );
   
   // Add the ListBox to the form.
   this->Controls->Add( listBox1 );
   
   // Set the ListBox to display items in multiple columns.
   listBox1->MultiColumn = true;
   
   // Set the selection mode to multiple and extended.
   listBox1->SelectionMode = SelectionMode::MultiExtended;
   
   // Shutdown the painting of the ListBox as items are added.
   listBox1->BeginUpdate();
   
   // Loop through and add 50 items to the ListBox.
   for ( int x = 1; x <= 50; x++ )
   {
      listBox1->Items->Add( String::Format( "Item {0}", x ) );

   }
   listBox1->EndUpdate();
   
   // Select three items from the ListBox.
   listBox1->SetSelected( 1, true );
   listBox1->SetSelected( 3, true );
   listBox1->SetSelected( 5, true );
   
   #if defined(DEBUG)
   // Display the second selected item in the ListBox to the console.
   System::Diagnostics::Debug::WriteLine( listBox1->SelectedItems[ 1 ] );
   
   // Display the index of the first selected item in the ListBox.
   System::Diagnostics::Debug::WriteLine( listBox1->SelectedIndices[ 0 ] );
   #endif
}
private void button1_Click(object sender, System.EventArgs e)
{
   // Create an instance of the ListBox.
   ListBox listBox1 = new ListBox();
   // Set the size and location of the ListBox.
   listBox1.Size = new System.Drawing.Size(200, 100);
   listBox1.Location = new System.Drawing.Point(10,10);
   // Add the ListBox to the form.
   this.Controls.Add(listBox1);
   // Set the ListBox to display items in multiple columns.
   listBox1.MultiColumn = true;
   // Set the selection mode to multiple and extended.
   listBox1.SelectionMode = SelectionMode.MultiExtended;
 
   // Shutdown the painting of the ListBox as items are added.
   listBox1.BeginUpdate();
   // Loop through and add 50 items to the ListBox.
   for (int x = 1; x <= 50; x++)
   {
      listBox1.Items.Add("Item " + x.ToString());
   }
   // Allow the ListBox to repaint and display the new items.
   listBox1.EndUpdate();
      
   // Select three items from the ListBox.
   listBox1.SetSelected(1, true);
   listBox1.SetSelected(3, true);
   listBox1.SetSelected(5, true);

   // Display the second selected item in the ListBox to the console.
   System.Diagnostics.Debug.WriteLine(listBox1.SelectedItems[1].ToString());
   // Display the index of the first selected item in the ListBox.
   System.Diagnostics.Debug.WriteLine(listBox1.SelectedIndices[0].ToString());             
}
Private Sub button1_Click(sender As Object, e As System.EventArgs)
    ' Create an instance of the ListBox.
    Dim listBox1 As New ListBox()
    ' Set the size and location of the ListBox.
    listBox1.Size = New System.Drawing.Size(200, 100)
    listBox1.Location = New System.Drawing.Point(10, 10)
    ' Add the ListBox to the form.
    Me.Controls.Add(listBox1)
    ' Set the ListBox to display items in multiple columns.
    listBox1.MultiColumn = True
    ' Set the selection mode to multiple and extended.
    listBox1.SelectionMode = SelectionMode.MultiExtended
    
    ' Shutdown the painting of the ListBox as items are added.
    listBox1.BeginUpdate()
    ' Loop through and add 50 items to the ListBox.
    Dim x As Integer
    For x = 1 To 50
        listBox1.Items.Add("Item " & x.ToString())
    Next x
    ' Allow the ListBox to repaint and display the new items.
    listBox1.EndUpdate()
    
    ' Select three items from the ListBox.
    listBox1.SetSelected(1, True)
    listBox1.SetSelected(3, True)
    listBox1.SetSelected(5, True)
       
    ' Display the second selected item in the ListBox to the console.
    System.Diagnostics.Debug.WriteLine(listBox1.SelectedItems(1).ToString())
    ' Display the index of the first selected item in the ListBox.
    System.Diagnostics.Debug.WriteLine(listBox1.SelectedIndices(0).ToString())
End Sub

Hinweise

Wenn die Sorted -Eigenschaft auf ListBox festgelegt trueist, wird das Element alphabetisch in die Liste eingefügt. Andernfalls wird das Element am Ende der Liste eingefügt. Verwenden Sie die Insert -Methode, um ein Element an einer bestimmten Position in das Listenfeld einzufügen. Verwenden Sie die AddRange -Methode, um dem Listenfeld in einem einzelnen Vorgang einen Satz von Elementen hinzuzufügen. Wenn Sie die Add -Methode verwenden möchten, um der Liste eine große Anzahl von Elementen hinzuzufügen, verwenden Sie die BeginUpdate -Methoden und EndUpdate , um zu verhindern, dass das ListBox element jedes Mal neu ausmalt, wenn der Liste ein Element hinzugefügt wird, bis alle Elemente der Liste hinzugefügt werden. Beim Hinzufügen von Elementen zu einem ListBoxist es effizienter, zuerst die Elemente zu sortieren und dann neue Elemente hinzuzufügen.

Wenn der Auflistung ein Objekt hinzugefügt wird, überprüft die ListBox erste, ob die DisplayMember -Eigenschaft der ListControl -Klasse den Namen eines Members aus dem Objekt aufweist, das beim Abrufen des Elementtexts als Verweis angegeben wurde. Wenn für die DisplayMember Eigenschaft kein Member angegeben ist, ruft ToString die ListBox -Methode des -Objekts auf, um den text abzurufen, der in der Liste angezeigt werden soll.

Gilt für: