Обновить DataGrid после вставки записи - PullRequest
0 голосов
/ 30 декабря 2011

Я хочу обновить мой DataGrid после вставки новой записи. Я попытался снова связать DataGrid с новым источником:

dgr_Datagrid.itemsource=tblTable.defaultView

но это, похоже, не помогает.

Пробовал также dgr_Datagrid.reload(True), но снова не удалось. Я проверил ItemSource из DataGrid после привязки и обнаружил, что в него добавлена ​​новая строка, но это, похоже, не отражается в DataGrid.

Есть ли способ отразить изменения в DataGrid ??

(я использую Silverlight 4.)

Ответы [ 2 ]

0 голосов
/ 12 июня 2012

Я недавно столкнулся с тем же самым ... Мне пришлось явно сделать

tblTable.AcceptChanges();

Сетка данных никогда не привязывается напрямую к датируемому объекту, а вместо этого - defaultView OF datatable.Поскольку новая запись добавляется в таблицу, уже связанный вид не знает об этом.Чтобы сбросить изменения новой записи и сбросить все данные, прикрепленные к defaultView, необходимо выполнить AcceptChanges () для таблицы.Это восстанавливает связанный элемент управления.

Теперь моя проблема заключается в настройке фокуса на вновь созданную запись обновленной сетки ...

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

dgr_Datagrid.Items.Refresh()
0 голосов
/ 30 декабря 2011
Private Void bind()
{
     //Bind Grid Here
}

После ввода звонка Bind();

...