2012-05-01 40 views
1

我正在制作Windows应用程序,并被困在一个地方。 我的问题是,我想通过选择一个ComboBox项目来显示DataGridView中的记录,但我不明白正确的方法。请帮我解决这个问题。如何根据选定的ComboBox项目在DataGridView中显示记录?

private void grid_Load(object sender, EventArgs e) 
{ 
con = new SqlConnection(constr); 

    try 
    { 
     con.Open(); 
     //this.studTableAdapter.Fill(this.pRJTestDBDataSet.stud); 
     //above line show error for connection to database 

     da = new SqlDataAdapter("SELECT stud_no FROM stud", con); 
     DataTable dt = new DataTable(); 
     da.Fill(dt); 
     comboBox1.DataSource = dt; 
     comboBox1.DisplayMember = "stud_no"; 
     comboBox1.ValueMember = "stud_no"; 
     comboBox1.DataSource = dt; 
     comboBox1.SelectedIndex = -1; 
     comboBox1_SelectedIndexChanged(sender, e); 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show(ex.Message); 
    } 
    finally 
    { con.Close(); } 
} 

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    this.studTableAdapter.Fill(pRJTestDBDataSet.stud); 
    //above line show error for connection to database 
} 

我在上面的代码尝试,但它不工作像登录有错误无法用户

+0

你应该分享一些你已经试过的代码。 – Ulises

回答

0

重新绑定在你所要绑定的数据组合框的每个SelectedItemIndex变化事件DataGrid中。

+0

thnx阿里它的工作原理:D – mitul

+0

欢迎您... – Ali

2
cmd = new SqlCommand("SELECT stud_no FROM stud", con); 
    da = new SqlDataAdapter(cmd); 

    da.Fill(dt); 
    Combobox1.DataSource = dt; 
    Combobox1.DisplayMember = dt.Columns("Stud_no").ToString; 
相关问题