|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
Есть грид, у которого ячейки в одном столбце - выпадающий список (у каждой ячейки может быть свой список в зависимости от значений в других столбцах). Датасорс у списка - ArrayList из объектов класса MyClass. ValueMember и DisplayMember настроены. Вопрос - как мне получить ссылку на текущий выбранный объект MyClass у ячейки? Есть ли у нее какое-то свойство для этого? Или нужно будет делать поиск в ArrayList по текущему значению ValueMember? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 13:54 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
Забыл сказать - ValueMember не может быть ссылкой на объект, а является ссылкой на поле объекта. т.к. грид заполняется запросом из базы, и линкуется к объекту по зачению этого поля (integer) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 13:57 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
Pallaris, опиши задачу кот. ты решаешь ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:10 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
pationPallaris, опиши задачу кот. ты решаешь Есть таблица (table1) в БД, у нее есть поле integer (название field1), которое ссылается на другую таблицу-справочник (table2). Я делаю запрос к таблице 1, заполняю данными грид. Даю пользователю из ComboBoxCell выбирать значения для field1. Но при этом, в зависимости от условий, список значений у каждой строки разный. Эти списки я загружаю отдельно в объекты класса MyClass, каждый из которых соответствует какой-то записи в таблице Table2 плюс реализует свою арифметику. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
В качестве DataSource у каждой ячейки указан ArrayList на массив этих объектов. ValueMember = "code", DisplayMember = "selfInfo". Теперь, когда пользователь нажимает кнопку на форме (Пересчет), мне нужно перебрать все строки на форме, и у каждого объекта MyClass, который связан с ComboBoxCell, вызвать метод DoCalculate(). Примерно так. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:21 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
PallarisЕсть таблица (table1) в БД, у нее есть поле integer (название field1), которое ссылается на другую таблицу-справочник (table2). Я делаю запрос к таблице 1, заполняю данными грид. Даю пользователю из ComboBoxCell выбирать значения для field1. Но при этом, в зависимости от условий, список значений у каждой строки разный. Эти списки я загружаю отдельно в объекты класса MyClass, каждый из которых соответствует какой-то записи в таблице Table2 плюс реализует свою арифметику. наследуй от DataGridViewComboBoxColumn и делай всё это там ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 16:10 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
pation, второй вариант, наверное более лучший, при событии BindingSource.PositionChanged для основной таблицы фильтруй DataSourse для колонки по условию ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 16:13 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
pationнаследуй от DataGridViewComboBoxColumn и делай всё это там т.е. нельзя определить (получить ссылку), какой объект датасорса сейчас отображается в ячейке comboboxcell? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 22:05 |
|
DataGridView и ComboBoxCell
|
|||
---|---|---|---|
#18+
Pallarispationнаследуй от DataGridViewComboBoxColumn и делай всё это там т.е. нельзя определить (получить ссылку), какой объект датасорса сейчас отображается в ячейке comboboxcell? можно ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 23:00 |
|
|
start [/forum/topic.php?fid=20&msg=38221762&tid=1404831]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 166ms |
0 / 0 |