我是新來的MVVM和我似乎無法找到答案以下幾點:this.Teams = new ObservableCollection <TeamViewModel>(_ teams);
我在Silverlight數據網格結合到一個視圖模型的的ObservableCollection團隊: 首先,我取了幾個團隊對象在列表中,然後我將它們提供給我的可觀察集合 (Public ObservableCollection Teams)
現在我想在Datagrid中添加一行,我的收藏空隊:
private void Add()
{
Team _team = new Team();
_team.recid = 1;
_team.teamid = "";
_team.ruleset = "";
_team.name = "";
this.Teams.Add(new TeamViewModel(_team));
}
我認爲notifypropertychanged不會觸發(只有當我設置集合)時,我需要做些什麼來通知我已更改的viewmodel的視圖?
由於提前,
邁克爾
感謝您的回覆! 它不起作用,手動升起也不這樣做,所以我懷疑我沒有正確地綁定。 這裏是xaml的一些代碼(在usercontrol中): DataContext =「{Binding Main,Mode = OneWay,Source = {StaticResource Locator}}
它可能與您的UserControl或您正在使用的DataGrid有關。 '使用Silverlight 4,你可以使用默認的DataGrid(http://msdn.microsoft.com/en-us/library/system.windows.controls.datagrid(v=vs.95).aspx)。 –
I猜猜它沒有出現在網格中,因爲我爲teamid/name添加了空字符串。 當我這樣做時像這樣,該行在網格中可見: _team.recid = 1; _team.teamid =「test」; _team.ruleset =「test」; _team.name =「test」; _team.rowstate = GlobalVariables.Rowstate.added; 感謝Claus/Brandorf的評論! Regards, Mike –