Para agregar Items al CheckedListBox solo se necesita una línea y en este ejemplo tendremos un form con un campo de texto, con el propósito de agregar Items al control.
Código
Para agregar lo que contiene el TextBox se debería hacer lo siguiente:
''En el evento del botón agregamos el código para agregar items al CheckedListBox Private Sub button1_Click(sender As Object, _ e As System.EventArgs) Handles button1.Click If textBox1.Text <> "" Then ''Se verifica si ya existe el texto para no repetir If checkedListBox1.CheckedItems.Contains(textBox1.Text) = False Then checkedListBox1.Items.Add(textBox1.Text, CheckState.Checked) End If textBox1.Text = "" End If End Sub ''button1_Click
La propiedad CheckState.Checked es la que indica si queremos que el item agregado aparezca chequeado o no. CheckState.Checked o CheckState.Unchecked, también se pueden utilizar True o False.
Si queremos limpiar los Items chequeados solo debemos recorrer el control e ir quitando esta propiedad a cada uno de los campos.
Dim n As Integer For n = 0 To checkedListBox1.Items.Count - 1 checkedListBox1.SetItemChecked(n, False) Next
Si queremos recorrer el CheckedListBox para salvar o validar los datos
Dim i As Integer Dim Valor as String For i = 0 To Me.chklCategorias.CheckedItems.Count - 1 Valor = chklCategorias.CheckedItems(i) Salvar(Valor) ''Valor contiene el contenido del item chequeado Next
Si queremos por ejemplo pasar los datos del CheckedListBox a un ListBox
'' Mueve los items chequeados desde el CheckedListBox a el listBox. Private Sub button2_Click(sender As Object, _ e As System.EventArgs) Handles button2.Click listBox1.Items.Clear() Dim i As Integer For i = 0 To checkedListBox1.CheckedItems.Count - 1 listBox1.Items.Add(checkedListBox1.CheckedItems(i)) Next i End Sub ''button2_Click
Si queremos validar el evento de cuando un item es chequeado o deschequeado
''Valida si el control todavía tiene items chequeados Private Sub checkedListBox1_ItemCheck( sender As Object, _ e As ItemCheckEventArgs) Handles checkedListBox1.ItemCheck If e.NewValue = CheckState.Unchecked Then If checkedListBox1.CheckedItems.Count = 1 Then MsgBox("Todavía existen items activos") Else MsgBox("No existen items activos") End If Else MsgBox("Todavía existen items activos") End If End Sub ''checkedListBox1_ItemCheck