ListBox.ObjectCollection.Add(Object) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Voegt een item toe aan de lijst met items voor een ListBox.
public:
int Add(System::Object ^ item);
public int Add(object item);
member this.Add : obj -> int
Public Function Add (item As Object) As Integer
Parameters
- item
- Object
Een object dat het item vertegenwoordigt dat moet worden toegevoegd aan de verzameling.
Retouren
De op nul gebaseerde index van het item in de verzameling of -1 als BeginUpdate() dit is aangeroepen.
Uitzonderingen
Er is onvoldoende ruimte beschikbaar om het nieuwe item toe te voegen aan de lijst.
item is null.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u een ListBox besturingselement maakt waarin meerdere items in kolommen worden weergegeven en meerdere items kunnen worden geselecteerd in de lijst van het besturingselement. De code voor het voorbeeld voegt 50 items toe aan de ListBoxAdd methode van de ListBox.ObjectCollection klasse en selecteert vervolgens drie items in de lijst met behulp van de SetSelected methode. De code geeft vervolgens waarden weer uit de ListBox.SelectedObjectCollection verzameling (via de SelectedItems eigenschap) en de ListBox.SelectedIndexCollection (via de SelectedIndices eigenschap). In dit voorbeeld is vereist dat de code zich bevindt in en wordt aangeroepen vanuit een Form.
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
Opmerkingen
Als de eigenschap van de SortedListBox eigenschap is ingesteld op true, wordt het item alfabetisch in de lijst ingevoegd. Anders wordt het item aan het einde van de lijst ingevoegd. Als u een item op een specifieke positie in de keuzelijst wilt invoegen, gebruikt u de Insert methode. Als u een set items wilt toevoegen aan de keuzelijst in één bewerking, gebruikt u de AddRange methode. Als u de Add methode wilt gebruiken om een groot aantal items toe te voegen aan de lijst, gebruikt u de BeginUpdate en EndUpdate methoden om te voorkomen dat het ListBox item telkens opnieuw wordt geschilderd wanneer een item wordt toegevoegd aan de lijst totdat alle items aan de lijst worden toegevoegd. Wanneer u items toevoegt aan een ListBox, is het efficiënter om de items eerst te sorteren en vervolgens nieuwe items toe te voegen.
Wanneer een object wordt toegevoegd aan de verzameling, controleert de ListBox eerste of de DisplayMember eigenschap van de ListControl klasse de naam heeft van een lid van het object dat is opgegeven om te verwijzen bij het verkrijgen van de itemtekst. Als de DisplayMember eigenschap geen lid heeft opgegeven, roept de ListBox eigenschap de ToString methode van het object aan om de tekst te verkrijgen die in de lijst moet worden weergegeven.