ListView.EndUpdate ListView.EndUpdate ListView.EndUpdate ListView.EndUpdate Method

Définition

Reprend le dessin de la liste view contrôle une fois que le dessin a été suspendu par le BeginUpdate() (méthode).Resumes drawing of the list view control after drawing is suspended by the BeginUpdate() method.

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

Exemples

L’exemple de code suivant illustre l’initialisation d’un ListView contrôle pour contenir les cases à cocher.The following code example demonstrates initializing a ListView control to contain check boxes. Il montre également comment utiliser le BeginUpdate et EndUpdate méthodes.It also demonstrates using the BeginUpdate and EndUpdate methods. Pour exécuter cet exemple, collez le code suivant dans un formulaire contenant un ListView nommé ListView1.To run this example, paste the following code into a form containing a ListView named ListView1. Appelez le InitializeListView méthode à partir du constructeur du formulaire ou Load (méthode).Call the InitializeListView method from the form's constructor or Load method.

void InitializeListView()
{
   this->ListView1 = gcnew System::Windows::Forms::ListView;
   
   // Set properties such as BackColor and DockStyle and Location.
   this->ListView1->BackColor = System::Drawing::SystemColors::Control;
   this->ListView1->Dock = System::Windows::Forms::DockStyle::Top;
   this->ListView1->Location = System::Drawing::Point( 0, 0 );
   this->ListView1->Size = System::Drawing::Size( 292, 130 );
   this->ListView1->View = System::Windows::Forms::View::Details;
   this->ListView1->HideSelection = false;
   
   // Allow the user to select multiple items.
   this->ListView1->MultiSelect = true;
   
   // Show CheckBoxes in the ListView.
   this->ListView1->CheckBoxes = true;
   
   //Set the column headers and populate the columns.
   ListView1->HeaderStyle = ColumnHeaderStyle::Nonclickable;
   ColumnHeader^ columnHeader1 = gcnew ColumnHeader;
   columnHeader1->Text = "Breakfast Choices";
   columnHeader1->TextAlign = HorizontalAlignment::Left;
   columnHeader1->Width = 146;
   ColumnHeader^ columnHeader2 = gcnew ColumnHeader;
   columnHeader2->Text = "Price Each";
   columnHeader2->TextAlign = HorizontalAlignment::Center;
   columnHeader2->Width = 142;
   this->ListView1->Columns->Add( columnHeader1 );
   this->ListView1->Columns->Add( columnHeader2 );
   array<String^>^foodList = {"Juice","Coffee","Cereal & Milk","Fruit Plate","Toast & Jelly","Bagel & Cream Cheese"};
   array<String^>^foodPrice = {"1.09","1.09","2.19","2.79","2.09","2.69"};
   int count;
   
   // Members are added one at a time, so call BeginUpdate to ensure 
   // the list is painted only once, rather than as each list item is added.
   ListView1->BeginUpdate();
   for ( count = 0; count < foodList->Length; count++ )
   {
      ListViewItem^ listItem = gcnew ListViewItem( foodList[ count ] );
      listItem->SubItems->Add( foodPrice[ count ] );
      ListView1->Items->Add( listItem );
   }
   
   //Call EndUpdate when you finish adding items to the ListView.
   ListView1->EndUpdate();
   this->Controls->Add( this->ListView1 );
}
private void InitializeListView()
{
	this.ListView1 = new System.Windows.Forms.ListView();

	// Set properties such as BackColor and DockStyle and Location.
	this.ListView1.BackColor = System.Drawing.SystemColors.Control;
	this.ListView1.Dock = System.Windows.Forms.DockStyle.Top;
	this.ListView1.Location = new System.Drawing.Point(0, 0);
	this.ListView1.Size = new System.Drawing.Size(292, 130);
	this.ListView1.View = System.Windows.Forms.View.Details;
	this.ListView1.HideSelection = false;

	// Allow the user to select multiple items.
	this.ListView1.MultiSelect = true;

	// Show CheckBoxes in the ListView.
	this.ListView1.CheckBoxes = true;
	
	//Set the column headers and populate the columns.
	ListView1.HeaderStyle = ColumnHeaderStyle.Nonclickable;
	
	ColumnHeader columnHeader1 = new ColumnHeader();
	columnHeader1.Text = "Breakfast Choices";
	columnHeader1.TextAlign = HorizontalAlignment.Left;
	columnHeader1.Width = 146;

	ColumnHeader columnHeader2 = new ColumnHeader();
	columnHeader2.Text = "Price Each";
	columnHeader2.TextAlign = HorizontalAlignment.Center;
	columnHeader2.Width = 142;

      	this.ListView1.Columns.Add(columnHeader1);
	this.ListView1.Columns.Add(columnHeader2);

	string[] foodList = new string[]{"Juice", "Coffee", 
		"Cereal & Milk", "Fruit Plate", "Toast & Jelly", 
		"Bagel & Cream Cheese"};

	string[] foodPrice = new string[]{"1.09", "1.09", "2.19", 
		"2.79", "2.09", "2.69"};
	
	int count;

	// Members are added one at a time, so call BeginUpdate to ensure 
	// the list is painted only once, rather than as each list item is added.
	ListView1.BeginUpdate();

	for(count = 0; count < foodList.Length; count++)
	{
		ListViewItem listItem = new ListViewItem(foodList[count]);
		listItem.SubItems.Add(foodPrice[count]);
		ListView1.Items.Add(listItem);
	}

	//Call EndUpdate when you finish adding items to the ListView.
	ListView1.EndUpdate();
	this.Controls.Add(this.ListView1);
}
Private Sub InitializeListView()
    Me.ListView1 = New System.Windows.Forms.ListView

    ' Set properties such as BackColor, Location and Size
    Me.ListView1.BackColor = System.Drawing.SystemColors.Control
    Me.ListView1.Dock = System.Windows.Forms.DockStyle.Top
    Me.ListView1.Location = New System.Drawing.Point(0, 0)
    Me.ListView1.Size = New System.Drawing.Size(292, 130)
    Me.ListView1.View = System.Windows.Forms.View.Details
    Me.ListView1.HideSelection = False

    ' Allow user to select multiple items.
    Me.ListView1.MultiSelect = True

    ' Show check boxes in the ListView.
    Me.ListView1.CheckBoxes = True

    'Set the column headers and populate the columns.
    ListView1.HeaderStyle = ColumnHeaderStyle.Nonclickable
    Dim columnHeader1 As New ColumnHeader
    With columnHeader1
        .Text = "Breakfast Choices"
        .TextAlign = HorizontalAlignment.Left
        .Width = 146
    End With
    Dim columnHeader2 As New ColumnHeader
    With columnHeader2
        .Text = "Price Each"
        .TextAlign = HorizontalAlignment.Center
        .Width = 142
    End With
    Me.ListView1.Columns.Add(columnHeader1)
    Me.ListView1.Columns.Add(columnHeader2)
    Dim foodList() As String = New String() {"Juice", "Coffee", _
        "Cereal & Milk", "Fruit Plate", "Toast & Jelly", _
        "Bagel & Cream Cheese"}

    Dim foodPrice() As String = New String() {"1.09", "1.09", "2.19", _
        "2.79", "2.09", "2.69"}
    Dim count As Integer

    ' Members are added one at a time, so call BeginUpdate to ensure 
    ' the list is painted only once, rather than as each list item is added.
    ListView1.BeginUpdate()

    For count = 0 To foodList.Length - 1
        Dim listItem As New ListViewItem(foodList(count))
        listItem.SubItems.Add(foodPrice(count))
        ListView1.Items.Add(listItem)
    Next

    'Call EndUpdate when you finish adding items to the ListView.
    ListView1.EndUpdate()
    Me.Controls.Add(Me.ListView1)
End Sub

Remarques

La meilleure façon d’ajouter plusieurs éléments à un ListView consiste à utiliser le AddRange méthode de la ListView.ListViewItemCollection (accessibles via le Items propriété de la ListView).The preferred way to add multiple items to a ListView is to use the AddRange method of the ListView.ListViewItemCollection (accessed through the Items property of the ListView). Cela vous permet de vous permet d’ajouter un tableau d’éléments à la liste en une seule opération.This enables you to add an array of items to the list in a single operation. Toutefois, si vous souhaitez ajouter un élément à la fois avec le Add méthode de la ListView.ListViewItemCollection (classe), vous pouvez utiliser la BeginUpdate méthode pour empêcher le contrôle de mise à jour le ListView chaque fois qu’un élément est ajouté.However, if you want to add items one at a time using the Add method of the ListView.ListViewItemCollection class, you can use the BeginUpdate method to prevent the control from repainting the ListView each time an item is added. Une fois que vous avez terminé la tâche d’ajout d’éléments au contrôle, appelez le EndUpdate méthode pour permettre la ListView à redessiner.Once you have completed the task of adding items to the control, call the EndUpdate method to enable the ListView to repaint. Cette méthode d’ajout d’éléments peut éviter le scintillement pendant le dessin de le ListView lorsqu’un grand nombre d’éléments est en cours ajouté au contrôle.This way of adding items can prevent flickered drawing of the ListView when a large number of items are being added to the control.

Si BeginUpdate est appelée plusieurs fois, EndUpdate doit être appelé un nombre équivalent de fois.If BeginUpdate is called more than once, EndUpdate must be called an equivalent number of times. Jusqu'à ce que le dernier appel à EndUpdate le ListView se repeint pas.Until the last call to EndUpdate the ListView will not repaint. Sinon, les appels multiples à BeginUpdate n’ont aucun effet.Other than this, multiple calls to BeginUpdate have no effect.

S’applique à

Voir aussi