Você está aqui: C# ::: Windows Forms ::: ListView |
Usando os eventos ItemCheck e ItemChecked da classe ListView para detectar quando um item é marcado ou desmarcadoQuantidade de visualizações: 9681 vezes |
A classe ListView permite a exibição de caixas de seleção (check boxes) ao lado de seus itens (exceto quando o modo de visualização está definido como Tile). Desta forma, é interessante sermos capazes de detectar quando a check box de um determinado item é marcada ou desmarcada. O evento ItemCheck da ListView é disparado quando o estado de um item está em transição entre marcado e desmarcado ou vice-versa. Note que o evento é disparado durante a transição, ou seja, ele não é disparado nem no ínicio nem no fim, mas no meio da operação. Veja: private void button1_Click(object sender, EventArgs e){ // vamos definir o modo de exibição da ListView listView1.View = View.Details; // vamos exibir caixas de seleção ao lado de cada item listView1.CheckBoxes = true; // vamos adicionar três colunas listView1.Columns.Add("Código"); listView1.Columns.Add("Nome"); listView1.Columns.Add("Categoria"); // vamos adicionar uma linha de dados listView1.Items.Add("56"); // primeira coluna listView1.Items[0].SubItems.Add("Osmar J. Silva"); // segunda coluna listView1.Items[0].SubItems.Add("Cliente"); // terceira coluna // vamos adicionar mais uma linha de dados listView1.Items.Add("105"); // primeira coluna listView1.Items[1].SubItems.Add("Carlos Igor de Souza"); // segunda coluna Veja que o tratador de evento ItemCheck recebe um objeto da classe ItemCheckEventArgs. Esta classe possui as seguintes propriedades: CurrentValue - Obtém um dos valores da enumeração CheckState que representa o estado atual do item. Se o item estiver selecionado o valor Checked será retornado. Caso contrário o valor retornado é Unchecked. Index - Obtém o índice do item que está prestes a ser marcado ou desmarcado. NewValue - Obtém um dos valores da enumeração CheckState que representa o novo estado do item. Se o item estiver prestes a ser selecionado o valor Checked será retornado. Caso contrário o valor retornado é Unchecked. O evento ItemChecked, por sua vez, é disparado quando a operação de marcar ou desmarcar um item é finalizada. Veja: private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e){ // vamos obter o item que foi marcado ou desmarcado ListViewItem item = e.Item; // vamos verificar se o item foi marcado ou desmarcado if(item.Checked){ Note que o tratador de evento ItemChecked recebe um objeto da classe ItemCheckedEventArgs. E esta classe possui apenas uma propriedade, que é uma referência ao item (ListViewItem) da ListView que está sendo marcado ou desmarcado. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |