所以我对编码和所有这些东西都很陌生,所以请原谅我,如果这是一个非常愚蠢的问题,我已经尝试寻找它,但没有找到任何帮助我的东西。
我的WinForm中有两个不同的DataGrids,一个是存储在其中的客户的信息,另一个是不同的联系人 - 都来自数据库。 现在我需要以某种方式让第二个网格更新,并且只显示与我选择的客户相关的联系人。
怎么会这样呢?
非常感谢帮助!
答案 0 :(得分:0)
好吧,我解决了这个问题并在这里与未来可能遇到同样问题的人分享。这就是函数的样子,可能不是世界上最漂亮的东西,但它运行起来。
public void RefreshContact(int customerID)
{
CustomerDBEntities db = new CustomerDBEntities();
var contacts = db.Contacts;
dataGridView_Contacts.Rows.Clear();
if (customerID != 0)
{
int i = 0;
foreach (var item in db.Customers.Where(x => x.PKCustomer == customerID).First().Contact.ToList())
{
dataGridView_Contacts.Rows.Add();
dataGridView_Contacts.Rows[i].Cells[0].Value = item.PKContact;
dataGridView_Contacts.Rows[i].Cells[1].Value = item.Name;
dataGridView_Contacts.Rows[i].Cells[2].Value = item.Firstname;
i++;
}
}
}
这就是我调用函数的方式
private void dataGridView_Customers_SelectionChanged(object sender, EventArgs e)
{
CustomerDBEntities db = new CustomerDBEntities();
int customerID = (int)dataGridView_Customers.SelectedRows[0].Cells[0].Value;
RefreshContacts(customerID);
}