DataGridView, привязка данных и фильтрация ComboBox - PullRequest
1 голос
/ 21 августа 2010

У меня есть DataGridView с колонкой в ​​выпадающем списке, показывающей возможные цены, и я хотел бы отображать только цены, относящиеся к конкретной строке.

Более подробно, скажем, у меня есть метод класса, который возвращает мне набор данных с 2 заполненными таблицами (получаемый с помощью хранимой процедуры, выполняющейся в базе данных SQL Server 2005).

Первая таблица содержит строки сведений о заказе, а вторая таблица - цены, действительные для каждого из продуктов.

По сути, мои DataTables из набора данных выглядят так:

OrderDetails

ProductType  | ProductID | Qty | SelectedPrice     |
DairyProduct |  Milk     |  5  |  5.50             |
Fruit        | Orange    |  7  |  6.90             |

и так далее ...

В моей таблице цен из набора данных у меня есть все цены, действительные для всех продуктов на дату заказа.

Prices

ProductType  | ProductID | Price     |
DairyProduct | Milk      |   5.50    | 
DairyProduct | Milk      |   6.90    |
DairyProduct | Milk      |   7.90    |
Fruits       | Orange    |   6.90    |
Fruits       | Orange    |   4.50    |

и так далее ...

Я связываю свою таблицу OrderDetails с DataGridView, который пользователь должен будет изменить.

Мне бы хотелось, чтобы в столбце цен DataGridView отображались цены из моей второй таблицы набора данных.

Мне удалось это сделать, и теперь у меня есть комбинированный список для каждой строки, но ComboBox отображает все цены из моей таблицы цен, и мне хотелось бы, чтобы только он отображал цены, действительные для этого конкретный продукт. Например, если пользователь щелкает DataGridView в строке «Молоко», он должен отображать только цены на молоко, а не все из них.

Я не уверен, как этого добиться. Есть указатели или примеры?

Заранее большое спасибо!

Я работаю на VS 2008, на C # и WinForms.

1 Ответ

2 голосов
/ 21 августа 2010

похоже, что вам нужно связать комбо не напрямую с источником данных, а с объектом. Объект представляет собой список цен, сгруппированных по productID

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...