|
|
|
Записи в DataGrid не обновляются новыми
|
|||
|---|---|---|---|
|
#18+
Здраствуйте. Я использую DataAdapter, DataSet и DataGrid. Суть проблемы. 1.В какой-то момент времени я с помощью адаптера заполняю в датасете таблицу с идентификатором, например, myTable 2. после того как поработал с этой таблицей через датасет (myGrid.SetDataBinding(mySet,myTable)) я удаляю из сета данную таблицу (mySet.Tables.Remove(myTable)) 3. Опять заполняю датасет таблицу с тем же идентификатором - myTable (команда выборки для адаптера совсем другая) 4. Привязываю myGrid.SetDataBinding(mySet,myTable) и в результате вижу предыдущие данные. Каким образом можно очистить DataGrid? Или может проблема не в этом? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 11:34 |
|
||
|
Записи в DataGrid не обновляются новыми
|
|||
|---|---|---|---|
|
#18+
Это просто глюк, надеюсь в следующем FrameWork его поправят. Чтобы избежать такого поведения вместо Код: plaintext 1. используйте Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 13:06 |
|
||
|
Записи в DataGrid не обновляются новыми
|
|||
|---|---|---|---|
|
#18+
Спасибо большое помогло ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 13:11 |
|
||
|
Записи в DataGrid не обновляются новыми
|
|||
|---|---|---|---|
|
#18+
Помогите плиз. у меня та же проблема. вы рекомендуете использовать вместо setDataBinding следующее myGrid.DataSource = mySet.Tables["myTableName"]; Что делать если у меня идет привязка не к таблице, а к ее дочерним записям , т.е myGrid.DataMember = "myTableName.MyRelation" Как мне поступить в этом случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2005, 07:41 |
|
||
|
Записи в DataGrid не обновляются новыми
|
|||
|---|---|---|---|
|
#18+
Это просто глюкэто не глюк :) 1. грид сам держит ссылки (причем не weak, а сильные ссылки) и на DataSet и на DataTable. Удаление таблицы из DataSet - не значит, что грид перестанет ее показывать. как показывал - так и будет показывать (т.к. он не подписывается на событие изменения состава таблиц DataSet - ибо НЕТ ИХ В ПРИРОДЕ). 2. если через SetDataBinding устанавливать новые данные для показа и при этом datasource и datamember теже самые, что и установленные в гриде, то грид просто ни хрена не делает (оптимизация, блин). то же самое происходит и с др. контролами (ListBox и ComboBox в частности). иногда помогает, если вводить "промежуточное" значение для datamember типа string.Empty. в этом случае грид может честно показать новую таблицу (но не всегда). 3. переустановка нового datasource для грида - это серпом по своим яй-м :) вот здесь вылетит такой баг в самый неподходящий момент, что мало не покажется (личный опыт + обсуждение на C# с Sanitto!!! ) PS наверное из-за этих "счастливых" возможностей MS и сделал рокировку с DataGrid с DataGridView PPS один раз установив binding для грида - и больше его трогать не надо. нужно работать с содержимым таблиц (очищать от записей, перезаполнять, и т.д.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2005, 08:24 |
|
||
|
Записи в DataGrid не обновляются новыми
|
|||
|---|---|---|---|
|
#18+
подпишусь ... один раз установив binding для грида - и больше его трогать не надо. нужно работать с содержимым таблиц (очищать от записей, перезаполнять, и т.д.) + читать MS KB где эти "глюки" описаны :-) 2 mysvetik уже ждем от вас кода в один из топиков, пока вы не подняли еще какие нибудь темы :-) Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2005, 09:11 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=17&tid=1353828]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 194ms |
| total: | 310ms |

| 0 / 0 |
