Seleccione un adaptador de tabla en tiempo de ejecución

Supongamos que hay n botones y una vista de cuadrícula de datos.

Arrastro un conjunto de datos que contiene n tablas, por lo tanto, creo n adaptadores de tabla que tienen la misma cadena de conexión. Quiero hacer clic en cada botón para mostrar cada tabla en cada adaptador de tabla respectivamente.

Creo que es una mala idea.

¿Debo crear un adaptador de tabla mediante programación en lugar de arrastrar un control al formulario?

muestra

preguntado el 03 de mayo de 12 a las 21:05

1 Respuestas

Acabo de escribir para otra persona este código:

//class variable:
DataSet ds  = new DataSet();

//fill dataset in some of your method:
using(SqlConnection conn = new SqlConnection("connString"))
{
    DataTable table1 = new DataTable("People");
    DataTable table2 = new DataTable("Cars");
    ds.Tables.Add(table1);
    ds.Tables.Add(table2);
    string query1 = @"SELECT * FROM People";
    string query2 = @"SELECT * FROM Cars";
    string[] queries = { query1, query2 };
    for(int i = 0; i < queries.Length; i++)
    {
         using(SqlDataAdapter da = new SqlDataAdapter(queries[i], conn))
             da.Fill(ds.Tables[i]);
    }
}

//now bind tables to your button click events (this is example for Cars):
void button1_Click()
{
    dataGridView1.DataSource = null;
    dataGridView1.DataSource = ds.Tables["Cars"].DefaultView; 

    //do the same for table "People" in some other button click event
}

contestado el 03 de mayo de 12 a las 21:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.