Principales respuestas
permitir seleccionar solo un check en listview

Pregunta
-
Hola,
Estoy cargando datos en un listview con la propiedad CheckBoxes en True para que el usuario pueda seleccionar la línea.
El problema que tengo es que necesito que el usuario pueda seleccionar solo una línea.
He usado la propiedad MultiSelect en False, pero el listview sigue permitiendo seleccionar varias líneas.
Agradezco vuestro comentarios.
Atentamente,
Manuel Luengo Gaete
Respuestas
-
Proba con esto
private void chklEstados_ItemCheck(object sender, ItemCheckEventArgs e) { if (e.NewValue == CheckState.Checked) { for (int ix = 0; ix < this.chklEstados.Items.Count; ++ix) { if (e.Index != ix) { this.chklEstados.SetItemChecked(ix, false); } } } }
OBS: Favor vota si te es útil la información.
Saludos
Bader Molinas - Paraguay
https://deveintel.wordpress.com/
- Marcado como respuesta manuel.softmedia miércoles, 20 de mayo de 2015 15:55
-
Hola:
Te dejo un ejemplo:
private ListViewItem _lastItemChecked; private void lstViewSubmodulos_ItemCheck(object sender, ItemCheckEventArgs e) { try { if (_lastItemChecked != null && _lastItemChecked.Checked && _lastItemChecked != lstViewSubmodulos.Items[e.Index]) { _lastItemChecked.Checked = false; } _lastItemChecked = lstViewSubmodulos.Items[e.Index]; } catch (Exception ex) { MessageBox.Show(string.Format("Error: {0}", ex.Message), "Error inesperado", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
Saludos desde Monterrey, Nuevo León, México!!!
- Marcado como respuesta manuel.softmedia miércoles, 20 de mayo de 2015 15:55
Todas las respuestas
-
Proba con esto
private void chklEstados_ItemCheck(object sender, ItemCheckEventArgs e) { if (e.NewValue == CheckState.Checked) { for (int ix = 0; ix < this.chklEstados.Items.Count; ++ix) { if (e.Index != ix) { this.chklEstados.SetItemChecked(ix, false); } } } }
OBS: Favor vota si te es útil la información.
Saludos
Bader Molinas - Paraguay
https://deveintel.wordpress.com/
- Marcado como respuesta manuel.softmedia miércoles, 20 de mayo de 2015 15:55
-
Hola:
Te dejo un ejemplo:
private ListViewItem _lastItemChecked; private void lstViewSubmodulos_ItemCheck(object sender, ItemCheckEventArgs e) { try { if (_lastItemChecked != null && _lastItemChecked.Checked && _lastItemChecked != lstViewSubmodulos.Items[e.Index]) { _lastItemChecked.Checked = false; } _lastItemChecked = lstViewSubmodulos.Items[e.Index]; } catch (Exception ex) { MessageBox.Show(string.Format("Error: {0}", ex.Message), "Error inesperado", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
Saludos desde Monterrey, Nuevo León, México!!!
- Marcado como respuesta manuel.softmedia miércoles, 20 de mayo de 2015 15:55
-