SelectedValue de ComboBox

03/03/2006 - 15:39 por Vyacheslav Popov | Informe spam
Hola foro

Estoy intentando cambiar el valor mediante el código de un ComboBox enlazado
a datos.
Lo hago asignando un valor a la propiedad SelectedValue pero no da
resultado.

¿Alguna sugerencia?

Preguntas similare

Leer las respuestas

#1 Miguel Oscar García
04/03/2006 - 11:27 | Informe spam
La verdad soy nuevo en en C# pero yo creo que tienes que crear un comando y
ejecutar una consulta de actualización pasando como argumento el nombre que
has seleccionado en el combo, despues actualizas el combo (refrescas).

ahorita no te puedo decir paso a paso las instrucciones porque no
especificas de qu e quien es tu proveedor de datos.
Respuesta Responder a este mensaje
#2 Vyacheslav Popov
04/03/2006 - 18:14 | Informe spam
Gracias por responder Miguel.

Tengo una tabla con países que tiene dos campos, código y nombre, y la
enlazo con un comboBox del siguiente modo:

cbPais.DataBindings.Add(new Binding("SelectedValue", drv, "pais"));
cbPais.ValueMember = "codigo";
cbPais.DataSource = geo_pais; // dataSet tipado
cbPais.DisplayMember = "nombre";

Posteriormente, tengo que cambiar el país seleccionado desde el código, y lo
hago asignando otro código a la propiedad SelectedValue:

cbPais.SelectedValue = 100;

Como resultado, obtengo seleccionado en el comboBox el país con el código
100.

El problema esta en que este cambio no afecta al campo de la fila enlazada.
Es decir, que al guardar el valor no se cambia.

Para complicarlo más, mi definición no permite acceso directo a la fila en
edición, es decir, no puede agregar este valor directamente a la columna de
la fila en edición, ejemplo:

drv["pais"] = 100;


¿Alguna sugerencia?

Gracias.

"Miguel Oscar García" escribió
en el mensaje news:
La verdad soy nuevo en en C# pero yo creo que tienes que crear un comando
y
ejecutar una consulta de actualización pasando como argumento el nombre
que
has seleccionado en el combo, despues actualizas el combo (refrescas).

ahorita no te puedo decir paso a paso las instrucciones porque no
especificas de qu e quien es tu proveedor de datos.
Respuesta Responder a este mensaje
#3 Miguel Oscar García
06/03/2006 - 08:18 | Informe spam
Pues la verdad sigo sin enterder bien a bien que es lo quieres hacer, si el
problema es cambiar el nombre del pais que para mi es lo mas logico esto es
como yo lo haria, de hecho son los pasos que te mencione que hicieras..



private void cargaDatos() //Esta es una funcion que carga los
datos al Combo box
{
string cad = "Data
Source=.\\SQLEXPRESS;DataBase=dbPaises;Connect Timeout0;Integrated
Security=True";
string consulta = "select * From pais";
SqlConnection conexion= new SqlConnection(cad);
conexion.Open();
SqlDataAdapter da = new SqlDataAdapter(consulta, conexion);
DataSet ds = new DataSet();
da.Fill(ds, "geo_pais");
cbPais.DataSource = ds; //dataSet
cbPais.ValueMember = "geo_pais.código";
cbPais.DisplayMember = "geo_pais.nombre";
}
private void Form1_Load(object sender, EventArgs e)
{
cargaDatos(); //Se llea el combo al cargar el formulario
}

private void textBox1_KeyUp(object sender, KeyEventArgs e) //Aqui
es donde se cambia el nombre en un cuadro de texto
{
if (e.KeyValue == 13) //Si presione enter
{
string cad = "Data
Source=.\\SQLEXPRESS;DataBase=dbPaises;Connect Timeout0;Integrated
Security=True";
SqlConnection conexion = new SqlConnection(cad);
conexion.Open();
String val = textBox1.Text;
String comando = "UPDATE dbo.pais SET nombre = '" + val + "'
WHERE código = " + cbPais.SelectedValue.ToString();
SqlCommand cmd = new SqlCommand(comando, conexion);
cmd.ExecuteNonQuery(); //executo el comando
conexion.Close(); //sierro la onexion
cargaDatos(); y buevo a cargarlos datos.
}
}
Respuesta Responder a este mensaje
#4 Samuel
15/03/2006 - 18:17 | Informe spam
Haz un Refresh
"Vyacheslav Popov" escribió en el
mensaje news:
Hola foro

Estoy intentando cambiar el valor mediante el código de un ComboBox
enlazado a datos.
Lo hago asignando un valor a la propiedad SelectedValue pero no da
resultado.

¿Alguna sugerencia?

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida