Envoyé par
ouinih
Merci !!
Comment faire pour construire une requête à partir des tables du dataset et afficher le résultat de la req dans une datagridview ?
Merci
Tu peux le faire avec BindingSource ou DataView.
Voici un exemple d'utilisation d'un BindingSource avec filtre:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| BindingSource myBindingSource;
DataSet myDataSet;
private void Form1_Load(object sender, EventArgs e)
{
using (SqlConnection oConnection = new SqlConnection(/*Parametre de connection */)
{
SqlCommand oCommand = new SqlCommand("select * from table1", oConnection);
SqlDataAdapter oAdapter = new SqlDataAdapter(oCommand);
myDataSet = new DataSet();
oAdapter.Fill(myDataSet);
}
myBindingSource = new BindingSource();
myBindingSource.DataSource = myDataSet;
myBindingSource.DataMember = myDataSet.Tables[0].TableName;
myGridView.DataSource = myBindingSource;
} |
Ensuite, pour mettre en place le filtre, tu peux par exemple créer un comboBox pour choisir quel filtre doit être appliqué. Dans la gestionnaire d'evt SelectedIndexChanged, tu met le code suivante:
if (myCombo.Text == "0") myBindingSource.Filter = "Column_table <= 0";
Ici tu dis que si la valeur 0 est sélectionné, seule les lignes qui ont la valeur Column_table<=0 devront être affiché sur le datagridView.
a+
Partager