我有dataGridView,它有dataSet,绑定源和tableAdapter。 在由tableAdapter绑定到dataGridView的dataSet中,我使用了内连接。
桌车: Car_ID,Client_ID,Model,LastOilChange,property ....
表型号: ID_Model,NameOfModel,ID_Producent
表产品: ID_Producent,NameOfProducent
DataGridView标头: NameOfProducent,NameOfModel,LastOilChange,property ...
...所以内部联接用于将Cars.Model与Model.ID_Model连接,使用Model.ID_producent与Producents.ID_Producent连接。
当表格加载初始化表格时 - 一切都很好,每个值都在列中,应该是。
我不知道如何使用过滤器?我想只为某些Client_ID选择汽车,当我这样做时 - 模型和生产是空的:/
我这样做:
List<Car> ClientsCar = (from u in DB.Cars
where u.Client_ID == sometextbox.text
select u).ToList();
DataGridView.BindingSource = ClientsCar;
请告诉我方式:)
答案 0 :(得分:0)
答案很简单(像往常一样)。
我创建了一个以ClientID
为参数的过程,并返回此客户端的select(带有内连接和其他东西)。之后,我从该过程为DataSource
创建了DataGridView
,并使用TableAdapter
将其填充为GetData
方法。
dataGridViewSamochodyPowiazaneKlienta.DataSource = this.wyszukajSamochodyKlientaTableAdapter.GetData(ID_klienta.ToString()).ToArray();
dataGridViewSamochodyPowiazaneKlienta.Refresh();
这解决了我的问题。