Freigeben über


ListBox.Sorted Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob die Elemente in der ListBox alphabetisch sortiert sind, oder legt diesen fest.

public:
 property bool Sorted { bool get(); void set(bool value); };
public bool Sorted { get; set; }
member this.Sorted : bool with get, set
Public Property Sorted As Boolean

Eigenschaftswert

true, wenn die Elemente im Steuerelement sortiert sind, andernfalls false. Der Standardwert ist false.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie mithilfe der GetSelected -Methode ermittelt wird, welche Elemente in einem ListBox ausgewählt werden, um die elemente auszuwählen, die nicht ausgewählt sind, und die Auswahl der ausgewählten Elemente aufzuheben. Das Beispiel veranschaulicht auch die Verwendung der SelectionMode -Eigenschaft, um mehr ListBox als ein ausgewähltes Element zu aktivieren, und verwendet die Sorted -Eigenschaft, um zu veranschaulichen, wie Elemente in einem ListBox automatisch sortiert werden. Dieses Beispiel erfordert, dass ein ListBoxFormular mit dem Namen listBox1hinzugefügt wurde und dass die InitializeMyListBox im Beispiel definierte Methode aus dem Load Ereignis des Formulars aufgerufen wird.

private:
   void InitializeMyListBox()
   {
      // Add items to the ListBox.
      listBox1->Items->Add( "A" );
      listBox1->Items->Add( "C" );
      listBox1->Items->Add( "E" );
      listBox1->Items->Add( "F" );
      listBox1->Items->Add( "G" );
      listBox1->Items->Add( "D" );
      listBox1->Items->Add( "B" );

      // Sort all items added previously.
      listBox1->Sorted = true;

      // Set the SelectionMode to select multiple items.
      listBox1->SelectionMode = SelectionMode::MultiExtended;

      // Select three initial items from the list.
      listBox1->SetSelected( 0, true );
      listBox1->SetSelected( 2, true );
      listBox1->SetSelected( 4, true );

      // Force the ListBox to scroll back to the top of the list.
      listBox1->TopIndex = 0;
   }

   void InvertMySelection()
   {
      // Loop through all items the ListBox.
      for ( int x = 0; x < listBox1->Items->Count; x++ )
      {
         // Select all items that are not selected,
         // deselect all items that are selected.
         listBox1->SetSelected( x,  !listBox1->GetSelected( x ) );
      }
      listBox1->TopIndex = 0;
   }
private void InitializeMyListBox()
{
   // Add items to the ListBox.
   listBox1.Items.Add("A");
   listBox1.Items.Add("C");
   listBox1.Items.Add("E");
   listBox1.Items.Add("F");
   listBox1.Items.Add("G");
   listBox1.Items.Add("D");
   listBox1.Items.Add("B");

   // Sort all items added previously.
   listBox1.Sorted = true;

   // Set the SelectionMode to select multiple items.
   listBox1.SelectionMode = SelectionMode.MultiExtended;

   // Select three initial items from the list.
   listBox1.SetSelected(0,true);
   listBox1.SetSelected(2,true);
   listBox1.SetSelected(4,true);

   // Force the ListBox to scroll back to the top of the list.
   listBox1.TopIndex=0;
}

private void InvertMySelection()
{
   // Loop through all items the ListBox.
   for (int x = 0; x < listBox1.Items.Count; x++)
   {
      // Determine if the item is selected.
      if (listBox1.GetSelected(x))
         // Deselect all items that are selected.
         listBox1.SetSelected(x,false);      
      else
         // Select all items that are not selected.
         listBox1.SetSelected(x,true);
   }
   // Force the ListBox to scroll back to the top of the list.
   listBox1.TopIndex=0;
}
Private Sub InitializeMyListBox()
   ' Add items to the ListBox.
   listBox1.Items.Add("A")
   listBox1.Items.Add("C")
   listBox1.Items.Add("E")
   listBox1.Items.Add("F")
   listBox1.Items.Add("G")
   listBox1.Items.Add("D")
   listBox1.Items.Add("B")

   ' Sort all items added previously.
   listBox1.Sorted = True

   ' Set the SelectionMode to select multiple items.
   listBox1.SelectionMode = SelectionMode.MultiExtended

   ' Select three initial items from the list.
   listBox1.SetSelected(0, True)
   listBox1.SetSelected(2, True)
   listBox1.SetSelected(4, True)

   ' Force the ListBox to scroll back to the top of the list.
   listBox1.TopIndex = 0
End Sub

Private Sub InvertMySelection()

   Dim x As Integer
   ' Loop through all items the ListBox.
   For x = 0 To listBox1.Items.Count - 1

      ' Determine if the item is selected.
      If listBox1.GetSelected(x) = True Then
         ' Deselect all items that are selected.
         listBox1.SetSelected(x, False)
      Else
         ' Select all items that are not selected.
         listBox1.SetSelected(x, True)
      End If
   Next x
   ' Force the ListBox to scroll back to the top of the list.
   listBox1.TopIndex = 0
End Sub

Hinweise

Verwenden Sie die Sorted -Eigenschaft, um Zeichenfolgen automatisch alphabetisch in einem ListBoxzu sortieren. Wenn Elemente einem sortierten ListBoxElement hinzugefügt werden, werden die Elemente an den entsprechenden Speicherort in der sortierten Liste verschoben. Beim Hinzufügen von Elementen zu einem ListBoxist es effizienter, zuerst die Elemente zu sortieren und dann neue Elemente hinzuzufügen.

Ein ListBox mit festgelegtem Sorted auf true sollte nicht an Daten gebunden sein, die die DataSource -Eigenschaft verwenden. Um sortierte Daten in einer gebundenen ListBoxDatei anzuzeigen, sollten Sie eine Bindung an eine Datenquelle herstellen, die das Sortieren unterstützt, und die Sortierung durch die Datenquelle bereitstellen.

Gilt für: