Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

Datagridview en visual basic.net 2010 help

batista098

Becerro
Desde
24 Abr 2009
Mensajes
22
Tengo un pequeño problema con el datagridview lo que pasa es que hago una consulta sql y trato de llenar los campos del datagrid pero en vez de agregalos abajo me lo agrega a los lados...

imagenes

11vc41i2.jpg.html


21we919u.jpg.html


31ye52uv.jpg.html


http://www.imaxenes.com/imagen/11vc41i2.jpg.html
http://www.imaxenes.com/imagen/21we919u.jpg.html
http://www.imaxenes.com/imagen/31ye52uv.jpg.html
codigo:

Dim con As String = "select a.n_reg, a.anexo, b.area, a.solicitante, a.lo_ce, a.compañia, a.numero, a.fecha, a.hora, a.descripcion from tb_reglla as a, tb_regane as b where a.anexo = b.anexo and a.n_reg = '" & txtnf.Text & "'"
Dim com As New OleDbCommand(con, conexion)
Dim ds As New DataSet
Dim ada As New OleDbDataAdapter(com)
ada.Fill(ds, "conre")
If ds.Tables("conre").Rows.Count > 0 Then
DataGridView1.DataSource = ds.Tables("conre")
txtnf.Text = ""
cbnf.Text = ""
If DataGridView1.RowCount > 1 Then
btim.Enabled = True
End If
Else
MsgBox("No se encontraron datos", MsgBoxStyle.Information, "Aviso")
End If
 
amigo yo lleno el datagrid en visual c# 2008 asi no se si te des una idea:

Código:
switch (e.KeyChar)
                {
                    case '\r':
                        dataGridView1.Columns.Clear();
                        dataGridView1.Rows.Clear();
                        string consultar2;
                        dataGridView1.ColumnCount = 9;
                        dataGridView1.Columns[0].Name = "Codigo de Barras";
                        dataGridView1.Columns[1].Name = "Titulo";
                        dataGridView1.Columns[2].Name = "Cantidad";
                        dataGridView1.Columns[3].Name = "Clase";
                        dataGridView1.Columns[4].Name = "Duracion";
                        dataGridView1.Columns[5].Name = "Idioma";
                        dataGridView1.Columns[6].Name = "Subtitulos";
                        dataGridView1.Columns[7].Name = "Img";
                        dataGridView1.Columns[8].Name = "Estreno";
                        if (comboBox5.Text == "Por codigo de barras")
                        {
                            consultar2 = "select * from peliculas where cod_barras LIKE '%" + this.textBox6.Text + "%" + "'";
                        }
                        else
                        {
                            consultar2 = "select * from peliculas where titulo LIKE '%" + this.textBox6.Text + "%" + "'";
                        }
                        string strCn2 = "data source=localhost;database=videoclub;UID='root';PWD='admin'";//ruta a la base de datos
                        MySqlConnection con = new MySqlConnection(strCn2);
                        MySqlCommand cmd = new MySqlCommand(consultar2, con);
                       // cmd.Parameters.Add("?busca", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = this.textBox6.Text;
                        con.Open();
                        MySqlDataReader dr = cmd.ExecuteReader();
                        while (dr.Read())
                        {
                            dataGridView1.Rows.Add(dr["cod_barras"].ToString(), dr["titulo"].ToString(), dr["cantidad"].ToString(), dr["clase"].ToString(), dr["duracion"].ToString(), dr["idioma"].ToString(), dr["subtitulos"].ToString(), dr["img"].ToString(), dr["estreno"].ToString());

                            //this.textBox1.Text = dr["cod_barras"].ToString();
                            //this.textBox2.Text = dr["titulo"].ToString();
                            //this.textBox3.Text = dr["disponible"].ToString();
                            //this.button2.Enabled = false;

                        }
                        con.Close();
                        dr.Close();
                        break;
                }
 
Hay dos formas de llenar el DG una de ellas es como tu lo estas haciendo y la otra como te mostro "eldesvirginador";
Cual es la diferencia? tu lo haces con una funcion que llena el dg con el resultado de la consulta automaticamente y la otra es con un ciclo while que llena uno por uno.

Solucion 1: al momento de declaras tu dg no pongas nombre a las columnas o no pongas las columnas
Solucion 2: Cambia el metodo de llenano por un ciclo while.
 
y porque no usas el asistonto de coneccion del visual estudio, y una ves que tengas la coneccion solo la jalas a la ventana en desarrollo y listo, yo asi le hacia la principio!!
 
Volver
Arriba