【发布时间】:2011-04-27 18:50:34
【问题描述】:
如果我从另一个表单调用函数时尝试用数据填充 datagridview,我会遇到问题。如果我在 datagridview 所在的 form2 中调用私有 void button1_Click 中的函数,但如果我从另一个表单 (Form1) 调用函数,则一切正常,datagridview 为空。
Form2 中的代码在哪里是 datagridview
public void fill_grid() {
MessageBox.Show("Yuhuuuuuuu");
form_Listusers form = new form_Listusers();
SQLiteConnection cn = new SQLiteConnection(Form1.dbQuery);
cn.Open();
string SQL;
SQL = "SELECT users_id, name, username, place FROM users";
SQLiteCommand cmd = new SQLiteCommand(SQL, cn);
SQLiteDataAdapter da = new SQLiteDataAdapter(cmd);
DataSet ds = new DataSet();
try
{
da.Fill(ds);
DataTable dt = ds.Tables[0];
this.grid_userlist.DataSource = dt;
}
catch (Exception ex)
{
MessageBox.Show("Errrrrrrror");
}
cn.Close();
}
Form1 中的代码:
Form2 frm = new Form2();
frm.fill_grid();
我收到消息“Yuhuuuuuuuu”,但 datagridview 为空。
#已解决
#在主窗体(Form1)中我设置实例
Form frm_Listusers = new form_Listusers();
但在此之后:
form_Listusers frm_Listusers = new form_Listusers();
我可以访问我的函数 frm.fill_grid();
【问题讨论】:
标签: c# sqlite datagridview