0

我有dataGridView,它有dataSet、绑定源和tableAdapter。在由 tableAdapter 绑定到 dataGridView 的数据集中,我使用了内部连接。

表 Cars:Car_ID、Client_ID、Model、LastOilChange、property....

表模型:ID_Model、NameOfModel、ID_Producent

表生产者:ID_Producent、NameOfProducent

DataGridView 标头:NameOfProducent、NameOfModel、LastOilChange、属性...

...所以内部连接用于将 Cars.Model 与 Model.ID_Model 连接,并将 Model.ID_producent 与 Producents.ID_Producent 连接起来。

当表在初始化表单上加载时 - 一切都很好,每个值都在它们应该在的列中。

我不知道如何使用过滤器?我只想为某些 Client_ID 选择 Cars,当我这样做时 - Model 和 Producent 为空:/

我这样做:

List<Car> ClientsCar = (from u in DB.Cars
                        where u.Client_ID == sometextbox.text
                        select u).ToList();
DataGridView.BindingSource = ClientsCar;

请给我指路:)

4

1 回答 1

0

答案很简单(一如既往)。

我创建了一个作为参数 a 的过程ClientID,并为此客户端返回 select (带有内部连接和其他东西)。之后,我从该过程创建了一个DataSourcefor ,并使用该方法填充它。DataGridViewTableAdapterGetData

dataGridViewSamochodyPowiazaneKlienta.DataSource = this.wyszukajSamochodyKlientaTableAdapter.GetData(ID_klienta.ToString()).ToArray();
dataGridViewSamochodyPowiazaneKlienta.Refresh();

这解决了我的问题。

于 2013-06-02T23:28:15.537 回答