在用户控件中,我有一个名为dgvCustomers
的datagridview,我想像这样在Gridview中加载客户:
private void Form1_Load(object sender, EventArgs e)
{
db = new DatabaseContext();
dgvCustomers.DataSource = db.Customers.ToList();
}
但是我无法访问datagridview,该怎么办?
这是我收到的错误:
名称dgvCustomers在当前上下文中不存在。
用户控件的名称是CCCustomers。
答案 0 :(得分:1)
您的datagridview对用户控件是私有。您可以通过检查CCCustomers.designer.cs
文件来确认这一点,在该文件中自动生成了datagridview的代码。
填充数据源的正确方法是在用户控件上创建一个公共方法,例如
public void LoadData(List<Customer> customers)
{
dgvCustomers.DataSource = customers;
}
您将从主表单中调用的方式如下:
private void Form1_Load(object sender, EventArgs e)
{
db = new DatabaseContext();
CCCustomers.LoadData(db.Customers.ToList());
}