J'utilise ItemCheckEventArgs et à partir de laquelle je peux obtenir une valeur d'index, mais à partir de cette valeur, je ne sais pas comment rechercher quoi le texte est de tout ce qui a été vérifié.Comment obtenir le texte de l'élément nouvellement coché dans une zone de liste cochée avec C#
Répondre
Dans gestionnaire d'événements ItemCheck utilisant ItemCheckEventArgs e vous pouvez retrive correspondant objet
checkedListBox1.Items[e.Index]
est ici un code bare-bones qui devrait faire l'affaire:
public void CheckedListBox1_ItemCheck(object sender, ItemCheckEventArgs e)
{
var checkedListBox = (CheckedListBox)sender;
var checkedItemText = checkedListBox.Items[e.Index].ToString();
}
dans l'événement SelectedIndexChanged
, mettre le code suivant
string text = (sender as CheckedListBox).SelectedItem.ToString();
Cela échouera si CheckedListBox prend en charge plusieurs sélections ... –
LeLa classea une propriété CheckedItems
.
private void WhatIsChecked_Click(object sender, System.EventArgs e) {
// Display in a message box all the items that are checked.
// First show the index and check state of all selected items.
foreach(int indexChecked in checkedListBox1.CheckedIndices) {
// The indexChecked variable contains the index of the item.
MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" + checkedListBox1.GetItemCheckState(indexChecked).ToString() + ".");
}
// Next show the object title and check state for each item selected.
foreach(object itemChecked in checkedListBox1.CheckedItems) {
// Use the IndexOf method to get the index of an item.
MessageBox.Show("Item with title: \"" + itemChecked.ToString() +
"\", is checked. Checked state is: " + checkedListBox1.GetItemCheckState(checkedListBox1.Items.IndexOf(itemChecked)).ToString() + ".");
}
}
Cela lui donnera tous les éléments cochés. Le PO a spécifiquement déclaré qu'il voulait le texte de l'article qui a déclenché l'événement ... –
@Justin Niessner: Vrai. Et il montre également comment obtenir un seul élément à travers la propriété indexée 'Items':' checkedListBox1.Items.IndexOf (itemChecked)). ToString() '. Cela imprime l'élément exact énuméré, de sorte que l'OP peut voir les différentes collections à jouer avec l'objet 'CheckedListBox', et il peut voir comment en obtenir un. Deux oiseaux avec une pierre! –
Le code serait utile. –