ItemData en checkedListBox

31/03/2005 - 16:56 por Miquel | Informe spam
Hola,

Tengo un DataTable con algunas filas. Cada fila, contiene 2 columnas. La
primera es un numero, y la segunda es un texto.
Mi intencion es rellenar un checkedListBox con esos datos, de forma que
muestre el texto, y que el numero quede almacenado (de alguna forma) como se
hacia en un listbox (con el itemData), para que cuando el usuario seleccione
algun elemento, yo pueda recuperar su numero asociado

pero... no sé como hacerlo...

Alguna pista?
Grácias
 

Leer las respuestas

#1 Angel J. Hernández M.
01/04/2005 - 15:56 | Informe spam
Debes crear una clase que sobreescriba el método ToString() el cual será el
texto mostrado por el Item en el control (CheckedListBox). A continuación te
muestro como debería ser:

class ItemLista {
private string m_texto;
private object m_valor;

public string Texto {
get {return m_texto;}
}

public object Valor {
get {return m_valor;}
}

public ItemLista(string texto, object valor) {
m_texto = texto;
m_valor = valor;
}

public override string ToString() {
return m_texto; // Este miembro es el mostrado en la lista
}
}


En el formulario cuando llenas el control, supongamos que es en el evento
Load del mismo luciría así

private void Form1_Load(object sender, System.EventArgs e) {
// Agregamos Items al CheckedListBox y estos son instancias de la clase
ItemLista. Si quieres obtener el valor de los Items
// marcados lo haces a partir de la colección CheckedItems, así puedes
iterar por la misma y recuperar el valor del campo
// que correspondería al valor que te interesa.

checkedListBox1.Items.Add(new ItemLista("Uno",1), false);
checkedListBox1.Items.Add(new ItemLista("Dos",2), false);
checkedListBox1.Items.Add(new ItemLista("Tres",3), false);
}

Espero que sea de tu utilidad,

Saludos,


Angel J. Hernández M.
MCP - MCAD - MCSD - MCDBA
http://groups.msn.com/desarrolladoresmiranda





"Miquel" wrote in message
news:
Hola,

Tengo un DataTable con algunas filas. Cada fila, contiene 2 columnas. La
primera es un numero, y la segunda es un texto.
Mi intencion es rellenar un checkedListBox con esos datos, de forma que
muestre el texto, y que el numero quede almacenado (de alguna forma) como
se
hacia en un listbox (con el itemData), para que cuando el usuario
seleccione
algun elemento, yo pueda recuperar su numero asociado

pero... no sé como hacerlo...

Alguna pista?
Grácias


Preguntas similares