2012-02-01 1 views
1

У меня странная ситуация в одной из моих программ, когда содержимое datagrid не обновляется, когда я вызываю команду grid.items.refresh.WPF datagrid не освежает, как просили

Я знаю, что источник сетки обновлен, как и должен, и я должен выйти из окна и снова открыть его, что приводит к возврату элементов sources к datagrid, теперь сетка в порядке.

Есть ли какая-нибудь известная ошибка с командой items.refresh в datagrid или есть что-то, что я не делаю правильно?

Спасибо,

Edit: Забыл упомянуть, это только кажется, что произойдет на моем компьютере клиента. Как обычно, он работает здесь, но я сам видел проблему. Я просто не могу это объяснить.

+0

Что вы используете в качестве источника сетки? –

+0

Это список (что-то), как правило, при изменении содержимого вызывается функция для выполнения некоторых вычислений и обновления содержимого сетки, а также некоторые другие, когда это необходимо. –

ответ

3

Некоторых предложения:

В определениях столбцов DataGrid, вы можете добавить UpdateSourceTrigger=PropertyChanged к креплениям колонке.

т.е. Binding = "{Binding Path = Product.ProductCode, UpdateSourceTrigger = PropertyChanged}"

Если это не поможет, попробуйте изменить свой список на ObservableCollection<OfSomething>. Затем привязка данных WPF автоматически реагирует на изменения в вашем источнике.

+0

Имеет ли наблюдаемое собрание уже весь меканизм для этого, и я могу использовать его то же самое, что я использовал бы List? –

+0

+1 При выполнении привязки данных в WPF вы должны использовать класс, который реализует ['INotifyPropertyChanged'] (http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged.aspx). 'ObservableCollection' часто является общим базовым классом для начала. – SliverNinja

Смежные вопросы