Buscale aqui!

El mio mismo

Mi experimento por tratar de ligar dos palabras para formar una frase coherente frase formar

Dic
07

System.Data.DataRowView al seleccionar en combo.

Posted by Mario

Esto me llevo varios dolores de cabeza, lo posteo para que no se me olvide jajaja, y por si a alguien le sirve.

Trabajando sobre Visual Studio 2005, C#, SQL 2005.

Al seleccionar un Item de un combo llenado mediante un DataTable, estableciendo sus propiedades de indizado y visualizado medainte el mismo conjunto de informacion… osea:

Combo.DataSource = DTComboSource;

Combo.ValueMember = “ID”;
Combo.DisplayMember = “Descripcion”;

Ni convirtiendo a  .ToString() el Combo.SelectedValue, deja de mostrar System.Data.DataRowView =(

Solucion:

Cambiar el orden, poner despues de la asigancion de propiedades del combo, el datasource, Combo.DataSource = DTComboSource

Osea:

Combo.ValueMember = “ID”;
Combo.DisplayMember = “Descripcion”;

Combo.DataSource = DTComboSource;

Asi si, asi si, gana la gente. Si no sirve me avisan.

UPDATE!!!

Si se esta ejecutando codigo en el evento SelecteIndex del Combo, se ejcutara por cada vez que un elemnto sea cargado en el combo, para esto, yo utilizo una variable que sirve como semaforo para ejecutar el codigo dentro de SelectedIndex.

Quedando de esta manera:

private void Combo_SelectedIndexChanged(object sender, EventArgs e)
{
if (CargandoCombo== false)
{
//Aqui va el codigo que ocupa el indice, que en ese momento esta siendo traido desde el DATASOURCE de           combo, por eso, trae System.Data.DataRowView
}
}

Obviamente, mientras se carga el combo, se debe de prender esta variable:

CargandoCombo = true;
Combo.ValueMember = "ID";Combo.DisplayMember = "Descripcion";
Combo.DataSource = DTComboSource;
CargandoCombo = false;

Y a darle atomos!

darle_atomos

  1. tonyj Said,

    Por fin!, me faltaba el ValueMember ;)

    Muchas gracias!!!!

  2. Mario Said,

    De nada! Que chido que te sirvió!

Add A Comment