Udostępnij za pośrednictwem


ListBox.SelectedItem Właściwość

Definicja

Pobiera lub ustawia aktualnie wybrany element w elemencie ListBox.

public:
 property System::Object ^ SelectedItem { System::Object ^ get(); void set(System::Object ^ value); };
[System.ComponentModel.Bindable(true)]
[System.ComponentModel.Browsable(false)]
public object SelectedItem { get; set; }
[System.ComponentModel.Bindable(true)]
[System.ComponentModel.Browsable(false)]
public object? SelectedItem { get; set; }
[<System.ComponentModel.Bindable(true)>]
[<System.ComponentModel.Browsable(false)>]
member this.SelectedItem : obj with get, set
Public Property SelectedItem As Object

Wartość właściwości

Obiekt reprezentujący bieżący wybór w kontrolce.

Atrybuty

Przykłady

W poniższym przykładzie kodu pokazano, jak używać SelectedIndexChanged zdarzenia do wyszukiwania i wybierania elementu w innej ListBox kontrolce. W przykładzie użyto SelectedIndexChanged zdarzenia, aby określić, kiedy wybrany element w elemencie ListBox jest zmieniany. Przykładowy kod odczytuje następnie tekst elementu przy użyciu SelectedItem właściwości i wywołuje FindString metodę w innej ListBox metodzie przy użyciu tekstu zwróconego przez SelectedItem w pierwszym ListBoxelemencie . Jeśli element zostanie znaleziony w innym ListBoxelemencie , zostanie wybrany element. W tym przykładzie do formularza zostały dodane dwie ListBox kontrolki o nazwach listBox1 i listBox2, które zawierają ListBox identyczne elementy. Przykład wymaga również, aby metoda obsługi zdarzeń zdefiniowana w przykładzie została połączona ze zdarzeniem SelectedIndexChangedlistBox1.

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 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

Uwagi

Dla standardu ListBoxmożna użyć tej właściwości, aby określić, który element jest wybrany w obiekcie ListBox. SelectionMode Jeśli właściwość obiektu ListBox jest ustawiona na SelectionMode.MultiSimple wartość lub SelectionMode.MultiExtended (co oznacza wybór ListBoxwielokrotny), a na liście wybrano wiele elementów, ta właściwość może zwrócić dowolny wybrany element.

Aby pobrać kolekcję zawierającą wszystkie zaznaczone elementy w zaznaczeniu ListBoxwielokrotnym, użyj SelectedItems właściwości . Jeśli chcesz uzyskać pozycję indeksu aktualnie wybranego elementu w obiekcie ListBox, użyj SelectedIndex właściwości . Ponadto można użyć SelectedIndices właściwości , aby uzyskać wszystkie wybrane indeksy w wielokrotnym zaznaczeniu ListBox.

Dotyczy