Caliburn Micro Update DataDrid的RowDetails

时间:2012-09-21 10:18:51

标签: binding datagrid refresh caliburn.micro rowdetails

让我解释一下我的问题。我正在与Caliburn Micro合作并拥有一个数据网格,其中ObservableCollection被绑定为Itemsource:

private static ObservableCollection<Models.GamesProperties> _dgGames;

public ObservableCollection<Models.GamesProperties> DgGames
{
    get { return _dgGames; }
    set
    {
        _dgGames = value;
        NotifyOfPropertyChange(() => DgGames);
    }
}

因此,当我从数据库加载数据时,该集合将被填充并绑定到我的数据网格(称为DgGames)

到目前为止,一切都很好。我为每个DataRow“DataRowDetails”定义了。包含ImageSource,一些TextBlocks等。上面提到的集合也包含那些DataRowDetails。

我现在为对话框窗口创建了另一个View和ViewModel,以便更改DataRowDetails。它确实有效,但datagrid(DgGames)不会应用这些更改。它没有显示我对集合所做的任何更新。我错过了什么?

提前感谢那些可以帮助我的人。

如果您需要更多信息,请随时提出。

1 个答案:

答案 0 :(得分:0)

为了在网格中即时查看修改,Models.GamesProperties必须正确实施INotifyPropertyChanged。由于您使用的是Caliburn,因此您可能希望从PropertyChangedBase派生它。