ListBox.TopIndex Eigenschaft

Definition

Ruft den Index des ersten sichtbaren Elements in der ListBox ab oder legt diesen fest.

public:
 property int TopIndex { int get(); void set(int value); };
[System.ComponentModel.Browsable(false)]
public int TopIndex { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.TopIndex : int with get, set
Public Property TopIndex As Integer

Eigenschaftswert

Der nullbasierte Index des ersten sichtbaren Elements im Steuerelement.

Attribute

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Sie die SelectedIndex -Eigenschaft mit der TopIndex -Eigenschaft verwenden, um das aktuell ausgewählte Element an den Anfang der Liste der Elemente im Anzeigebereich des ListBoxzu verschieben. Im Beispiel wird weiter veranschaulicht, wie Elemente mithilfe der RemoveAt -Methode der System.Windows.Forms.ListBox.ObjectCollection -Klasse entfernt werden und wie die gesamte Elementauswahl mithilfe der ClearSelected -Methode gelöscht wird. Der Code verschiebt zuerst das aktuell ausgewählte Element in der ListBox an den Anfang der Liste. Der Code entfernt dann alle Elemente vor dem aktuell ausgewählten Element und löscht alle Auswahlen im ListBox. Dieses Beispiel erfordert, dass ein ListBox enthaltende Elemente zu einem Formular hinzugefügt wird und dass ein Element derzeit im ListBoxausgewählt ist.

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

Hinweise

Anfangs befindet sich das Element mit der Indexposition 0 (0) am oberen Rand des sichtbaren Bereichs von ListBox. Wenn der Inhalt des ListBox bildlaufs erfolgt ist, befindet sich möglicherweise ein anderes Element oben im Anzeigebereich des Steuerelements. Sie können diese Eigenschaft verwenden, um den Index innerhalb des ListBox.ObjectCollection für ListBox das -Element abzurufen, das derzeit am oberen Rand des sichtbaren Bereichs des Steuerelements positioniert ist. Sie können diese Eigenschaft auch verwenden, um ein Element in der Liste oben im sichtbaren Bereich des Steuerelements zu positionieren.

Gilt für: