ListBox.BeginUpdate 方法

定义

当向 ListBox 中一次添加一个项时,通过防止该控件绘图来维护性能,直到调用 EndUpdate() 方法为止。

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

示例

下面的代码示例使用 和 EndUpdate 方法,BeginUpdate同时将 5,000 个项添加到 。ListBox 此示例要求 ListBox 已将名为 的 listBox1控件添加到 , Form 并且此方法放置在窗体中并从中调用。

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

注解

将多个项添加到 ListBox 的首选方法是使用 AddRange 类的 ListBox.ObjectCollection 方法, () ItemsListBox 属性。 这使你能够在单个操作中将项数组添加到列表中。 但是,如果要使用 Add 类的 ListBox.ObjectCollection 方法一次添加一个项,则可以使用 BeginUpdate 方法防止控件在每次将项添加到列表中时重新绘制 ListBox 。 完成将项添加到列表的任务后,调用 EndUpdate 方法以启用 ListBox 重新绘制。 在向列表中添加大量项时,这种添加项的方式可以防止 闪烁绘制 ListBox

适用于

另请参阅