如何从C#中的另一个类访问DataGridView?
在我的程序中,有一个名为Book的Form8和类。在Form8中有一个DataGridView,我需要从Book类访问该DataGridView。有人能解释一下怎么做吗?我在书中做了以下事情如何从C#中的另一个类访问DataGridView?,c#,datagridview,C#,Datagridview,在我的程序中,有一个名为Book的Form8和类。在Form8中有一个DataGridView,我需要从Book类访问该DataGridView。有人能解释一下怎么做吗?我在书中做了以下事情 public void searchBook(string valueToSearch) { DynamicConnection con = new DynamicConnection(); con.mysqlconnection(); con.sq
public void searchBook(string valueToSearch)
{
DynamicConnection con = new DynamicConnection();
con.mysqlconnection();
con.sqlquery("select * from TBL_Book where CONCAT(ISBN_No,BookName,Author,Publisher,CategoryID,ReOrderLevel)like '%" + valueToSearch + "%'");
con.dataread();
con.datatable();
con.table.Load(con.datareader);
Form8 f8 = new Form8();
f8.DGV.DataSource = con.table;
}
并在表格8中列出以下内容
public Form8()
{
InitializeComponent();
DGV = dataGridView1;
}
public DataGridView DGV { get; set; }
如果我是您,我会从数据访问类(我相信是Book类)中删除与Form8变量相关的行。您可以从searchBook()返回一个DataTable并将其绑定到Form8中
public DataTable searchBook(string valueToSearch)
{
DynamicConnection con = new DynamicConnection();
con.mysqlconnection();
con.sqlquery("select * from TBL_Book where CONCAT(ISBN_No,BookName,Author,Publisher,CategoryID,ReOrderLevel)like '%" + valueToSearch + "%'");
con.dataread();
con.datatable();
con.table.Load(con.datareader);
return con.table;
}
public Form8()
{
InitializeComponent();
dataGridView1;
}
void Search_Click(object sender, EventArgs e)
{
Book b = new Book();
dataGridView1.DataSource = b.searchBook("Text To Search");
}
如果我是您,我会从数据访问类(我相信是Book类)中删除与Form8变量相关的行。您可以从searchBook()返回一个DataTable并将其绑定到Form8中
public DataTable searchBook(string valueToSearch)
{
DynamicConnection con = new DynamicConnection();
con.mysqlconnection();
con.sqlquery("select * from TBL_Book where CONCAT(ISBN_No,BookName,Author,Publisher,CategoryID,ReOrderLevel)like '%" + valueToSearch + "%'");
con.dataread();
con.datatable();
con.table.Load(con.datareader);
return con.table;
}
public Form8()
{
InitializeComponent();
dataGridView1;
}
void Search_Click(object sender, EventArgs e)
{
Book b = new Book();
dataGridView1.DataSource = b.searchBook("Text To Search");
}
看起来您已经在访问代码中的
DataGridView
。但是你忘了出示表格。或者您是否已经打开了一个表单,并且希望使用该表单而不是一个全新的表单?如果是这种情况,那么您需要将对所需表单的引用传递到该方法中,就像您已经将字符串传递到该方法中一样。“我需要从Book类访问该DataGridView”。不,你没有,绝对没有。让代码返回数据源并在UI代码中绑定。看起来您已经在访问代码中的DataGridView
。但是你忘了出示表格。或者您是否已经打开了一个表单,并且希望使用该表单而不是一个全新的表单?如果是这种情况,那么您需要将对所需表单的引用传递到该方法中,就像您已经将字符串传递到该方法中一样。“我需要从Book类访问该DataGridView”。不,你没有,绝对没有。让代码返回数据源并绑定到UI代码中。