ListBox.SelectedIndex Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví nulový index aktuálně vybrané položky v objektu ListBox.
public:
virtual property int SelectedIndex { int get(); void set(int value); };
[System.ComponentModel.Bindable(true)]
[System.ComponentModel.Browsable(false)]
public override int SelectedIndex { get; set; }
[<System.ComponentModel.Bindable(true)>]
[<System.ComponentModel.Browsable(false)>]
member this.SelectedIndex : int with get, set
Public Overrides Property SelectedIndex As Integer
Hodnota vlastnosti
Index aktuálně vybrané položky založený na nule. Pokud není vybrána žádná položka, vrátí se záporná hodnota 1 (-1).
- Atributy
Výjimky
Přiřazená hodnota je menší než -1 nebo větší než nebo rovna počtu položek.
Vlastnost SelectionMode je nastavena na hodnotu None
.
Příklady
Následující příklad kódu ukazuje, jak pomocí SelectedIndex vlastnosti s TopIndex vlastností přesunout aktuálně vybranou položku na začátek seznamu položek v oblasti zobrazení objektu ListBox. Příklad dále ukazuje, jak odebrat položky pomocí RemoveAt metody System.Windows.Forms.ListBox.ObjectCollection třídy a jak vymazat všechny položky výběr pomocí ClearSelected metody . Kód nejprve přesune aktuálně vybranou položku v seznamu ListBox na začátek seznamu. Kód pak odebere všechny položky před aktuálně vybranou položkou a vymaže všechny výběry v objektu ListBox. Tento příklad vyžaduje, aby ListBox byly do formuláře přidány položky obsahující položky a aby byla položka aktuálně vybrána v objektu ListBox.
private:
void RemoveTopItems()
{
// Determine if the currently selected item in the ListBox
// is the item displayed at the top in the ListBox.
if ( listBox1->TopIndex != listBox1->SelectedIndex )
// Make the currently selected item the top item in the ListBox.
listBox1->TopIndex = listBox1->SelectedIndex;
// Remove all items before the top item in the ListBox.
for ( int x = (listBox1->SelectedIndex - 1); x >= 0; x-- )
{
listBox1->Items->RemoveAt( x );
}
// Clear all selections in the ListBox.
listBox1->ClearSelected();
}
private void RemoveTopItems()
{
// Determine if the currently selected item in the ListBox
// is the item displayed at the top in the ListBox.
if (listBox1.TopIndex != listBox1.SelectedIndex)
// Make the currently selected item the top item in the ListBox.
listBox1.TopIndex = listBox1.SelectedIndex;
// Remove all items before the top item in the ListBox.
for (int x = (listBox1.SelectedIndex -1); x >= 0; x--)
{
listBox1.Items.RemoveAt(x);
}
// Clear all selections in the ListBox.
listBox1.ClearSelected();
}
Private Sub RemoveTopItems()
' Determine if the currently selected item in the ListBox
' is the item displayed at the top in the ListBox.
If listBox1.TopIndex <> listBox1.SelectedIndex Then
' Make the currently selected item the top item in the ListBox.
listBox1.TopIndex = listBox1.SelectedIndex
End If
' Remove all items before the top item in the ListBox.
Dim x As Integer
For x = listBox1.SelectedIndex - 1 To 0 Step -1
listBox1.Items.RemoveAt(x)
Next x
' Clear all selections in the ListBox.
listBox1.ClearSelected()
End Sub
Poznámky
U standardního ListBoxobjektu můžete tuto vlastnost použít k určení indexu položky, která je vybrána v objektu ListBox. Pokud je vlastnost objektu ListBoxSelectionMode nastavena na nebo SelectionMode.MultiSimple
SelectionMode.MultiExtended
(což označuje vícenásobný výběrListBox) a v seznamu je vybráno více položek, může tato vlastnost vrátit index libovolné vybrané položce.
Chcete-li načíst kolekci obsahující indexy všech vybraných položek v vícenásobném výběru ListBox, použijte SelectedIndices vlastnost . Pokud chcete získat položku, která je aktuálně vybraná v objektu ListBox, použijte SelectedItem vlastnost . Kromě toho můžete vlastnost použít SelectedItems k získání všech vybraných položek ve vícenásobný výběr ListBox.