Foros del Web » Programación para mayores de 30 ;) » .NET »

Mostrar datos desde un ComboBox

Estas en el tema de Mostrar datos desde un ComboBox en el foro de .NET en Foros del Web. Hola a todos Tengo un combobox el cual lleno al cargar el formulario con un store procedure, una vez llenado el combo me muestra en ...
  #1 (permalink)  
Antiguo 29/12/2007, 19:10
Avatar de gabyweb  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 364
Antigüedad: 22 años, 4 meses
Puntos: 0
Pregunta Mostrar datos desde un ComboBox

Hola a todos

Tengo un combobox el cual lleno al cargar el formulario con un store procedure, una vez llenado el combo me muestra en un textbox sus datos.

Por ejemplo: Direccion, Telefono, etc

Cómo puedo hacer para que cuando elija otro item del combo los textboxes se actualicen?

O sea la idea es mostrar los datos de los items seleccionados.

Gracias por su ayuda
__________________
Gaby :adios:
  #2 (permalink)  
Antiguo 31/12/2007, 07:07
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Re: Mostrar datos desde un ComboBox

public partial class Form1 : Form
{
SqlConnection con = new SqlConnection("Data Source=.;initial catalog=deepra;uid=sa;pwd=;");
SqlDataAdapter ad;
CurrencyManager cur;
SqlCommandBuilder cbuilder;
DataSet ds = new DataSet();
DataRow dr;
string PageAction = "";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
ad = new SqlDataAdapter("select * from Student", con);
cbuilder = new SqlCommandBuilder(ad);
ad.InsertCommand = cbuilder.GetInsertCommand();
ad.UpdateCommand = cbuilder.GetUpdateCommand();
ad.DeleteCommand = cbuilder.GetDeleteCommand();

ad.Fill(ds, "Stud");
TxtRoll.DataBindings.Add("Text", ds, "Stud.Roll");
TxtName.DataBindings.Add("Text", ds, "Stud.Name");
TxtAddress.DataBindings.Add("Text", ds, "Stud.Address");


cur = (CurrencyManager)this.BindingContext[ds, "Stud"];
}

private void BtnFirst_Click(object sender, EventArgs e)
{
cur.Position = 0;
}

private void BtnPrevious_Click(object sender, EventArgs e)
{
cur.Position -= 1;
}

private void BtnNext_Click(object sender, EventArgs e)
{
cur.Position += 1;
}

private void BtnLast_Click(object sender, EventArgs e)
{
cur.Position = cur.Count - 1;
}

private void BtnNew_Click(object sender, EventArgs e)
{
dr = ds.Tables["Stud"].NewRow();
TxtRoll.Text = "";
TxtName.Text = "";
TxtAddress.Text = "";
PageAction = "Add";
}

private void BtnSave_Click(object sender, EventArgs e)
{
if (PageAction == "Add")
{
dr[0] = Int32.Parse(TxtRoll.Text);
dr[1] = TxtName.Text;
dr[2] = TxtAddress.Text;
ds.Tables["Stud"].Rows.Add(dr);
ad.Update(ds.Tables["Stud"]);
}
else
{
dr = ds.Tables["Stud"].Rows[cur.Position];
dr.BeginEdit();
dr[0] = Int32.Parse(TxtRoll.Text);
dr[1] = TxtName.Text;
dr[2] = TxtAddress.Text;
dr.EndEdit();
ad.Update(ds.Tables["Stud"]);
}
}

private void BtnDelete_Click(object sender, EventArgs e)
{
ds.Tables["Stud"].Rows[cur.Position].Delete();
ad.Update(ds.Tables["Stud"]);
}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
cur.Position=comboBox1.SelectedIndex;
}


Saludos
Peterpay
  #3 (permalink)  
Antiguo 31/12/2007, 08:48
Avatar de gabyweb  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 364
Antigüedad: 22 años, 4 meses
Puntos: 0
Re: Mostrar datos desde un ComboBox

Gracias "Peterpay" por tu ayuda
__________________
Gaby :adios:
  #4 (permalink)  
Antiguo 21/01/2009, 15:39
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Ayuda en C#

Buenas y saludos ante todo, estoy realizando una base de datos una en acces y otra en SQL 2005 uso visual studioo 2008 y aqui tengo el problema.

Cuando creo una aplicación de formularios y a estos le agrego una base de datos sea en Acces o SQL no le pongo la barra de desplazamiento que trae quiero ponerle botones que me permitan Agregar registro guardar registro moverme por los registros y eliminar, hasta ahora e llegado hacer lo de agregar, guardar, pero en eliminar un registro logro que me elimine consecutivamente los registro pero no el registro que yo desee por ej si tengo 20 registro y quiero eliminar el 15 cuando preciono el botón eliminar me borrar el registro 1.. Y lo mismo me pasa en SQL. Como puedo solucionar el problema del código del botón eliminar en acces y en SQL.
  #5 (permalink)  
Antiguo 22/01/2009, 08:37
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

Cuban no se si te entendi bien pero si lo que queres hacer es seleccionar un registro en una grid y mediante un boton eliminarlo yo haria algo como captar el valor de la celda en la grid que tiene el primarykey a eliminar y luego pasaria el parametro a un store procedure que se encarge de borrar el registro
para captar el valor de la celda creo no estoy seguro que es algo asi:


aux=this.dataGridView1.SelectedCells[0].Value;
//aux es del tipo por vos usado y la asignacion con el cast apropiado


y para el store procedure yo uso esto:


this.Cursor = System.Windows.Forms.Cursors.AppStarting;
this.myconn = new System.Data.SqlClient.SqlConnection();
this.Todo = new System.Data.SqlClient.SqlCommand();
this.myconn.ConnectionString = "Data Source=.\\SQLEXPRESS;Initial Catalog=dbesc;Integrated Security=True";
this.myconn.FireInfoMessageEventOnUserErrors = false;
System.Data.SqlClient.SqlDataReader mydr;
this.Todo.Connection = this.myconn;
Todo.CommandType = CommandType.StoredProcedure;
Todo.Parameters.Add("@nro", SqlDbType.Int).Value = aux;
Todo.CommandText = "pa_del";
myconn.Open();
mydr = Todo.ExecuteReader();
myconn.Close();
this.Cursor = System.Windows.Forms.Cursors.Default;
MessageBox.Show("EL REGISTRO HA SIDO ELIMINADO CON EXITO");
this.Close()



previa delclaracion en el form de:
private System.Data.SqlClient.SqlConnection myconn;
private System.Data.SqlClient.SqlCommand Todo;


espero te sirva.Suerte
  #6 (permalink)  
Antiguo 22/01/2009, 10:12
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

Haber si entiendo con este codigo logro seleccionar la fila que deseo borrar no? bueno ahora como le doy la condicion de borrar, antes utilizaba este codigo

private void btnDelete_Click(object sender, EventArgs e)
{

bdDataSet1.Tables["Nombre"].Rows[0].Delete();

}

pero con esto elimino consecutivamente no importa que seleccione siempre me borra la primera fila, entonces con el codigo este

this.dataGridView1.SelectedCells[0].Value;
como lo implemento con la condicion de borrar
  #7 (permalink)  
Antiguo 22/01/2009, 11:22
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

fijate que con la linea:
bdDataSet1.Tables["Nombre"].Rows[0].Delete();
al tener ".Rows[0]" siempre te va a borrar el 1 reguistro lo que vas a tener que hacer es devolver en una variable int la posicion del registro a eliminar y poner algo asi:
int aux;
bdDataSet1.Tables["Nombre"].Rows[aux].Delete();
  #8 (permalink)  
Antiguo 22/01/2009, 11:35
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

ok pero con el codigo que me diste this.dataGridView1.SelectedCells[0].Value; supuestamente con esto deveria tomarme el registro donde selecciono ahora como borrro ya que el codigo que uso para borrar es bdDataSet1.Tables["Nombre"].Rows[0].Delete();, otra cosa
la varia int donde la declaro?
  #9 (permalink)  
Antiguo 22/01/2009, 11:37
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

ya resolvi lo de la variable int lo que no se si es correcto o no,

int aux= 0;
bdDataSet1.Tables["Nombre"].Rows[aux].Delete();

tuve que darle a aux un valor 0 como ejemplo para que no me diera error que otra forma puedo hacer pues de esta manera me sigue borrando la primera fila y no la que marco
  #10 (permalink)  
Antiguo 22/01/2009, 11:53
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

cuban esta linea "this.dataGridView1.SelectedCells[0].Value" te toma la primer celda seleccionada por eso el indice 0 hace esto para que te devuelva el indice
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
aux=this.dataGridView1.SelectedCells[0].RowIndex;
}


y al variable aux declarala : public static int aux en el form principal y en borras cambiando 0 por aux
private void btnDelete_Click(object sender, EventArgs e)
{

bdDataSet1.Tables["Nombre"].Rows[aux].Delete();

}
probalo y me contas
  #11 (permalink)  
Antiguo 22/01/2009, 12:16
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

haber compa aqui te paso todo el codigo y dime que tengo mal

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace bd2
{
public partial class Form1 : Form


{
public Form1()



{

InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{

this.oleDbDataAdapter1.Fill(this.bdDataSet1);
//this.oleDbDataAdapter1.Fill(this.bdDataSet1);
}

private void btnSave_Click(object sender, EventArgs e)
{
this.Validate();
this.nombreBindingSource.EndEdit();
this.oleDbDataAdapter1.Update(this.bdDataSet1);
MessageBox.Show("Actualizado");
}

private void btnNew_Click(object sender, EventArgs e)
{
this.nombreBindingSource.AddNew();
}

private void btnDelete_Click(object sender, EventArgs e)
{

bdDataSet1.Tables["Nombre"].Rows[aux].Delete();

}


private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
aux = this.dataGridView1.SelectedCells[0].RowIndex;
}
}
}



Dime que me falto aqui
  #12 (permalink)  
Antiguo 22/01/2009, 12:26
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

declarar la variable aux:



namespace bd2
{
public partial class Form1 : Form
public static int aux;

{
public Form1()



{

InitializeComponent();...............

si no anda pasame el error que devuelve
  #13 (permalink)  
Antiguo 22/01/2009, 12:58
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

Me sale esto

Error 1 { expected
Error 2 Invalid token '{' in class, struct, or interface member declaration
  #14 (permalink)  
Antiguo 23/01/2009, 08:39
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

perdon por no contestarte antes ese error es que te falta una llave "{"
  #15 (permalink)  
Antiguo 23/01/2009, 09:41
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

si pero mira, la llave la pongo aqui de estaforma

namespace bd2
{
public partial class Form1 : Form
// tengo que poner una llave aqui
{
public static int aux;

// y borrar la llave que tengo abajo para que me funcione sin error
{

public Form1()
  #16 (permalink)  
Antiguo 23/01/2009, 09:44
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Sonrisa Respuesta: Mostrar datos desde un ComboBox

Ahora mira este detalle despues de tanto dar encontre esta forma de hacerlo...

dataGridView1.Rows.Remove(dataGridView1.CurrentRow );

Con esto puedo borrar el registor seleccionado sin ningun problema, pero quisiera saber la forma que me estas esplicando, puesto que esto me sirbe para borrar en un grid no en un texbot

Última edición por CubanSexy; 23/01/2009 a las 10:10 Razón: Algo que encontre
  #17 (permalink)  
Antiguo 23/01/2009, 10:09
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

La llave que esta arriba de public form1() no va
  #18 (permalink)  
Antiguo 23/01/2009, 10:20
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

ok provare haber
  #19 (permalink)  
Antiguo 26/01/2009, 07:38
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Mostrar datos desde un ComboBox

quito la llave y me da otro error
  #20 (permalink)  
Antiguo 26/01/2009, 08:29
Avatar de JHB
JHB
 
Fecha de Ingreso: enero-2009
Ubicación: San Luis
Mensajes: 22
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos desde un ComboBox

pasa el error asi lo vemos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:17.