Udostępnij za pośrednictwem


ListBox.BeginUpdate Metoda

Definicja

Utrzymuje wydajność, gdy elementy są dodawane do ListBox elementu pojedynczo, uniemożliwiając rysowanie kontrolki do momentu EndUpdate() wywołania metody .

public:
 void BeginUpdate();
public void BeginUpdate ();
member this.BeginUpdate : unit -> unit
Public Sub BeginUpdate ()

Przykłady

W poniższym przykładzie kodu użyto BeginUpdate metod i EndUpdate podczas dodawania pięciu tysięcy elementów do elementu ListBox. Ten przykład wymaga, aby kontrolka ListBox o nazwie listBox1została dodana do Form obiektu i że ta metoda jest umieszczana w formularzu i wywoływana z niej.

void AddToMyListBox()
{
   // Stop the ListBox from drawing while items are added.
   listBox1->BeginUpdate();

   // Loop through and add five thousand new items.
   for ( int x = 1; x < 5000; x++ )
   {
      listBox1->Items->Add( String::Format( "Item {0}", x ) );
   }
   listBox1->EndUpdate();
}
public void AddToMyListBox()
{
   // Stop the ListBox from drawing while items are added.
   listBox1.BeginUpdate();

   // Loop through and add five thousand new items.
   for(int x = 1; x < 5000; x++)
   {
      listBox1.Items.Add("Item " + x.ToString());   
   }
   // End the update process and force a repaint of the ListBox.
   listBox1.EndUpdate();
}
Public Sub AddToMyListBox()
    ' Stop the ListBox from drawing while items are added.
    listBox1.BeginUpdate()
       
    ' Loop through and add five thousand new items.
    Dim x As Integer
    For x = 1 To 4999
        listBox1.Items.Add("Item " & x.ToString())
    Next x
    ' End the update process and force a repaint of the ListBox.
    listBox1.EndUpdate()
End Sub

Uwagi

Preferowanym sposobem dodania wielu elementów do ListBox klasy jest użycie AddRange metody ListBox.ObjectCollection klasy (za pośrednictwem Items właściwości ListBoxklasy ). Dzięki temu można dodać tablicę elementów do listy w ramach jednej operacji. Jeśli jednak chcesz dodać elementy pojedynczo przy użyciu Add metody ListBox.ObjectCollection klasy, możesz użyć BeginUpdate metody , aby uniemożliwić przemalowanie ListBox kontrolki za każdym razem, gdy element zostanie dodany do listy. Po zakończeniu zadania dodawania elementów do listy wywołaj metodę EndUpdate , aby umożliwić ListBox ponowne wykonanie. Ten sposób dodawania elementów może uniemożliwić migotanie rysunku ListBox po dodaniu dużej liczby elementów do listy.

Dotyczy

Zobacz też