Pasar registros de la base de datos a un listbox
Publicado por Cristian Riquelme (1 intervención) el 24/06/2015 03:11:47
Hola mi problema es el siguiente, tengo la tabla llamada "material_presupuesto"
id = int
idpresupuesto = int
nombre = nvarchar
cantidad = int
precio = decimal.
y lo que quiero hacer es buscar en la base de datos todos los materiales que tengan el mismo idpresupuesto y mostrarlos en los listbox correspondientes.
Lo que hice es esto:
SqlConnection con = new SqlConnection();
con.ConnectionString = (Properties.Settings.Default.base_carpConnectionString);
string cadsql = "Select * from material_presupuesto where idpresupuesto ='" + idTextBox.Text + "' ";
SqlCommand comando = new SqlCommand(cadsql, con);
con.Open();
SqlDataReader leer = comando.ExecuteReader();
if(leer.Read() == true)
{
foreach(Object ob in leer)
{
listBox1.Items.Add(leer["nombre"].ToString());
listBox2.Items.Add(leer["cantidad"].ToString());
listBox3.Items.Add(leer["precio"].ToString());
}
}
con.Close();
Lo que sucede es que me guarda en el listbox el ultimo elemento que lee el datareader, Porque sera?
saludos.
id = int
idpresupuesto = int
nombre = nvarchar
cantidad = int
precio = decimal.
y lo que quiero hacer es buscar en la base de datos todos los materiales que tengan el mismo idpresupuesto y mostrarlos en los listbox correspondientes.
Lo que hice es esto:
SqlConnection con = new SqlConnection();
con.ConnectionString = (Properties.Settings.Default.base_carpConnectionString);
string cadsql = "Select * from material_presupuesto where idpresupuesto ='" + idTextBox.Text + "' ";
SqlCommand comando = new SqlCommand(cadsql, con);
con.Open();
SqlDataReader leer = comando.ExecuteReader();
if(leer.Read() == true)
{
foreach(Object ob in leer)
{
listBox1.Items.Add(leer["nombre"].ToString());
listBox2.Items.Add(leer["cantidad"].ToString());
listBox3.Items.Add(leer["precio"].ToString());
}
}
con.Close();
Lo que sucede es que me guarda en el listbox el ultimo elemento que lee el datareader, Porque sera?
saludos.
Valora esta pregunta


0