|
|
|
Построчное сохранеие в гриде! Как? (VS 2005)
|
|||
|---|---|---|---|
|
#18+
Привет, всем! Задача сохранять ввод пользователя в грид (DataGridView) построчно в «Дельфи» решалась просто. При смене текущей строки визуальный контрол перед(!!!) перемещением на другую строку, вызывал метод сохранения у данных (Query), который и порождал нужные для программиста события: • Перед сохранением (BeforePost) – задаём вопрос «Сохранить» • После сохранения (AfterPost) – если отсоединённые данные (UpdateSQL) то сохраняем в базу • Ошибка сохранения (PostError)- переводим сообщение об ошибке сервера на язык пользователя. Теперь в VS 2005 мы имеем связку «DataGridView», «BindingSource» и «DataSet» в котором находятся таблицы. Если принять, что если нет визуального аналога элемента то его событиями лучше не пользоваться. Тогда получается парадокс. Нам нужны события перед (Changing), но у BindingSource и у грида их нет! Так что делать? Буду очень благодарен за любую информации на эту тему! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2005, 12:06 |
|
||
|
Построчное сохранеие в гриде! Как? (VS 2005)
|
|||
|---|---|---|---|
|
#18+
На сколько я понимаю, необходимо просто отслеживать измененные записи в DataSet и на основе этой информации работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2005, 17:34 |
|
||
|
Построчное сохранеие в гриде! Как? (VS 2005)
|
|||
|---|---|---|---|
|
#18+
Привет! У dataset нет событий типа changing!!! У него есть события после перехода на другую строку! То есть там ничего сделать нельзя! Нужны типа BeforePost!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2005, 18:34 |
|
||
|
Построчное сохранеие в гриде! Как? (VS 2005)
|
|||
|---|---|---|---|
|
#18+
У Datatable есть два события типа Before это DataTable.ColumnChanging - Occurs when a value is being changed for the specified DataColumn in a DataRow. Здесь можно проверить значение. Можно это делать и на DataGridViewCellValidaing. Но главное если мы на событии DataTable.ColumnChanging зададим вопрос "Сохранить?" то всё слолмается при перерисовке! Не на всяком собитии можно открывать дополнительные окна! Так что же делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2005, 10:41 |
|
||
|
Построчное сохранеие в гриде! Как? (VS 2005)
|
|||
|---|---|---|---|
|
#18+
Еще есть полезные события у CurrencyManager. Правда это касается 1.1 фреймворка. Не знаю, произошли ли какие измнения в биндинге в 2005 студии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2005, 10:50 |
|
||
|
Построчное сохранеие в гриде! Как? (VS 2005)
|
|||
|---|---|---|---|
|
#18+
Его заменили на BindingSource, с которым мы и работаем! У него события после! На сегодя есть решение. Но общий вопрос - надо ли сохранять данные построчно в базу на сервере и тем самым нагонять трафик, или дать возможность пользователю обработать таблицу а потом разом её запихнуть на SQL Server. В последнем случае вопрос - как донести до пользователя какие строчки сохранились, а какие нет и почему? Есть ли реальные приложения , которые так работают? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 12:39 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=33282984&tid=1353613]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 404ms |

| 0 / 0 |
