Freigeben über


ListBox.SelectedItem-Eigenschaft

Ruft das derzeit ausgewählte Element in ListBox ab oder legt dieses fest.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Syntax

'Declaration
<BindableAttribute(True)> _
Public Property SelectedItem As Object
'Usage
Dim instance As ListBox
Dim value As Object

value = instance.SelectedItem

instance.SelectedItem = value
[BindableAttribute(true)] 
public Object SelectedItem { get; set; }
[BindableAttribute(true)] 
public:
property Object^ SelectedItem {
    Object^ get ();
    void set (Object^ value);
}
/** @property */
public Object get_SelectedItem ()

/** @property */
public void set_SelectedItem (Object value)
public function get SelectedItem () : Object

public function set SelectedItem (value : Object)

Eigenschaftenwert

Ein Objekt, das die aktuelle Auswahl im Steuerelement darstellt.

Hinweise

Mithilfe dieser Eigenschaft können Sie für eine Standard-ListBox das in der ListBox ausgewählte Element bestimmen. Wenn die SelectionMode-Eigenschaft von ListBox auf SelectionMode.MultiSimple oder SelectionMode.MultiExtended festgelegt ist (wodurch eine ListBox mit Mehrfachauswahl angegeben wird) und mehrere Elemente in der Liste ausgewählt sind, kann diese Eigenschaft jedes ausgewählte Element zurückgeben.

Wenn Sie eine Auflistung abrufen möchten, die sämtliche ausgewählten Elemente in einer ListBox mit Mehrfachauswahl enthält, verwenden Sie die SelectedItems-Eigenschaft. Wenn Sie die Indexposition des derzeit in der ListBox ausgewählten Elements abrufen möchten, verwenden Sie die SelectedIndex-Eigenschaft. Zusätzlich können Sie über die SelectedIndices-Eigenschaft alle ausgewählten Indizes in einer ListBox mit Mehrfachauswahl abrufen.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie das SelectedIndexChanged-Ereignis für die Suche nach und die Auswahl von Elementen in einem anderen ListBox-Steuerelement verwendet wird. Dabei wird mit dem SelectedIndexChanged-Ereignis bestimmt, zu welchem Zeitpunkt das ausgewählte Element in der ListBox geändert wird. Der Beispielcode liest daraufhin unter Verwendung der SelectedItem-Eigenschaft den Text des Elements und ruft die FindString-Methode für eine andere ListBox auf, indem er den von SelectedItem in der ersten ListBox zurückgegebenen Text verwendet. Wenn in der anderen ListBox ein Element gefunden wird, wird dieses ausgewählt. Für dieses Beispiel müssen einem Formular die beiden ListBox-Steuerelemente listBox1 und listBox2 hinzugefügt werden, und beide ListBox-Steuerelemente müssen identische Elemente enthalten. Des Weiteren muss in diesem Beispiel die dort definierte Ereignisbehandlungsmethode mit dem SelectedIndexChanged-Ereignis von listBox1 verbunden sein.

Private Sub listBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles listBox1.SelectedIndexChanged
   ' Get the currently selected item in the ListBox.
   Dim curItem As String = listBox1.SelectedItem.ToString()

   ' Find the string in ListBox2.
   Dim index As Integer = listBox2.FindString(curItem)
   ' If the item was not found in ListBox 2 display a message box, otherwise select it in ListBox2.
   If index = -1 Then
      MessageBox.Show("Item is not available in ListBox2")
   Else
      listBox2.SetSelected(index, True)
   End If
End Sub
private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
   // Get the currently selected item in the ListBox.
   string curItem = listBox1.SelectedItem.ToString();

   // Find the string in ListBox2.
   int index = listBox2.FindString(curItem);
   // If the item was not found in ListBox 2 display a message box, otherwise select it in ListBox2.
   if(index == -1)
      MessageBox.Show("Item is not available in ListBox2");
   else
      listBox2.SetSelected(index,true);
}
private:
   void listBox1_SelectedIndexChanged( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Get the currently selected item in the ListBox.
      String^ curItem = listBox1->SelectedItem->ToString();

      // Find the string in ListBox2.
      int index = listBox2->FindString( curItem );

      // If the item was not found in ListBox 2 display a message box,
      //  otherwise select it in ListBox2.
      if ( index == -1 )
            MessageBox::Show( "Item is not available in ListBox2" );
      else
            listBox2->SetSelected( index, true );
   }
private void listBox1_SelectedIndexChanged(Object sender, 
    System.EventArgs e)
{
    // Get the currently selected item in the ListBox.
    String curItem = listBox1.get_SelectedItem().ToString();
    // Find the string in ListBox2.
    int index = listBox2.FindString(curItem);
    // If the item was not found in ListBox 2 display a message box, 
    // otherwise select it in ListBox2.
    if (index == -1) {
        MessageBox.Show("Item is not available in ListBox2");
    }
    else {
        listBox2.SetSelected(index, true);
    }
} //listBox1_SelectedIndexChanged 

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

ListBox-Klasse
ListBox-Member
System.Windows.Forms-Namespace