ListView.ItemCheck Événement

Définition

Se produit lorsque l'état d'activation d'un élément change.

public event System.Windows.Forms.ItemCheckEventHandler ItemCheck;
public event System.Windows.Forms.ItemCheckEventHandler? ItemCheck;

Type d'événement

Exemples

L’exemple de code suivant illustre un contrôle vérifié ListView qui gère l’événement ItemCheck . La méthode utilise les ItemCheckEventArgs.CurrentValue propriétés et ItemCheckEventArgs.Index pour récupérer et décompter le prix des éléments de menu sélectionnés. Pour exécuter cet exemple, collez le code suivant dans un formulaire contenant un ListView nommé ListView1 et un TextBox nommé Textbox1. Appelez la InitializeListView méthode à partir du constructeur ou Load de la méthode du formulaire. Vérifiez que l’événement ItemCheck est associé au gestionnaire d’événements dans cet exemple.

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);
}
double price = 0.0;

// Handles the ItemCheck event. The method uses the CurrentValue
// property of the ItemCheckEventArgs to retrieve and tally the  
// price of the menu items selected.  
private void ListView1_ItemCheck1(object sender, 
    System.Windows.Forms.ItemCheckEventArgs e)
{
    if (e.CurrentValue==CheckState.Unchecked)
    {
        price += Double.Parse(
            this.ListView1.Items[e.Index].SubItems[1].Text);
    }
    else if((e.CurrentValue==CheckState.Checked))
    {
        price -= Double.Parse(
            this.ListView1.Items[e.Index].SubItems[1].Text);
    }

    // Output the price to TextBox1.
    TextBox1.Text = price.ToString();
}

Remarques

La CheckBoxes propriété doit avoir la valeur true pour que case activée zones s’affichent en regard de chaque élément du ListView contrôle. L’événement ItemCheck se produit lorsque l’état case activée d’un élément change ou lorsque la CheckBoxes propriété a la valeur true. Vous pouvez créer un gestionnaire d’événements pour que l’événement ItemCheck effectue des tâches telles que la modification de l’état de l’icône d’un élément ou d’une autre tâche spécifique à l’application chaque fois qu’un élément est archivé dans le ListView contrôle.

Note

Si le handle de fenêtre n’a pas été créé lorsque l’événement ItemCheck est déclenché, l’événement est retardé. Une fois le handle de fenêtre créé (lorsque le formulaire est affiché), tous les événements retardés ItemCheck sont déclenchés. Pour plus d'informations, consultez HandleCreated.

Pour plus d'informations sur la gestion des événements, voir gestion et déclenchement d’événements.

S’applique à

Produit Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Voir aussi