如何从C#中的另一个类访问DataGridView?

时间:2018-05-27 12:41:27

标签: c# datagridview

在我的程序中有Form8和Class命名为Book.In Form8有一个DataGridView,我需要从Book类访问那个DataGridView。任何人都可以解释如何做到这一点吗?我在书中做了以下事情

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;
    }

并遵循Form8中的内容

 public Form8()
    {
        InitializeComponent();
        DGV = dataGridView1;
    }
 public DataGridView DGV { get; set; }

1 个答案:

答案 0 :(得分:1)

如果我是你,我会从数据访问类中删除与Form8变量相关的行(我相信它是Book类)。您可以从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");
}