C# 在C中筛选表#

C# 在C中筛选表#,c#,wpf,C#,Wpf,我有一个连接到C#项目的数据库,其中有3个表:公司、产品和库存。清单列出公司ID、产品ID和数量。Combobox1列出所有公司ID。选择一个时,我希望listview1仅显示具有该公司ID的库存中的行 //binding DB to memorycopy this.DBContext = new DBEntities(); listView1.ItemsSource = this.SupPartContext.SPs; GridViewColumn companyIDColumn =

我有一个连接到C#项目的数据库,其中有3个表:公司、产品和库存。清单列出公司ID、产品ID和数量。Combobox1列出所有公司ID。选择一个时,我希望listview1仅显示具有该公司ID的库存中的行

//binding DB to memorycopy   
this.DBContext = new DBEntities();

listView1.ItemsSource = this.SupPartContext.SPs;
GridViewColumn companyIDColumn = new GridViewColumn();
sNumColumn.Width = 90;
sNumColumn.Header = "companyID";
sNumColumn.DisplayMemberBinding = new Binding("COMPANYID");

GridViewColumn ProductIDColumn = new GridViewColumn();
pNumColumn.Width = 90;
pNumColumn.Header = "ProductID";
pNumColumn.DisplayMemberBinding = new Binding("PRODUCTID");
GridViewColumn quantityColumn = new GridViewColumn();
qtyColumn.Width = 90;
qtyColumn.Header = "quantity";
qtyColumn.DisplayMemberBinding = new Binding("QUANTITY");
GridView newGridview = new GridView();
newGridview.Columns.Add(companyIDColumn);
newGridview.Columns.Add(productIDColumn);
newGridview.Columns.Add(quantityColumn);

listView1.View = newGridview;

任何帮助,即使是正确方向上的一点,都将不胜感激。谢谢您的时间。

如果您希望列表视图在不编写任何代码的情况下自动更改,您可能无法实现这一点。但是,如果在组合框值更改为下一行时重新绑定列表,它将按预期过滤列表

listView1.ItemsSource = this.SupPartContext.SPs.Where(sp => sp.CompanyID = {get the select company from the row here})

当我这样做时,会出现几个错误,包括“Delegate”System.Func不接受1个参数“这是代码listView1.ItemsSource=this.SupPartContext.SPs.Where的完整行(sp=>sp.CompanyID=comboBoxGetList.SelectedItem);错误在Where之后开始(