我正在尝试获取已绑定到CollectionViewSource的datagrid的当前选定项目。但是,看起来好像SelectedItem属性没有正确绑定到我在ViewModel中设置的属性。DataGrid SelectedItem被绑定到错误的DataContext MVVM模式
<Grid DataContext="{Binding CollectionView}">
<DataGrid ItemsSource="{Binding}" Margin="0,30,0,0" SelectedItem="{Binding SelectedRow}" />
</Grid>
当运行该项目时,我在VS2010的输出框中看到此错误消息。
System.Windows.Data Error: 40 : BindingExpression path error: 'SelectedRow' property not found on 'object' ''BindingListCollectionView' (HashCode=56718381)'. BindingExpression:Path=SelectedRow; DataItem='BindingListCollectionView' (HashCode=56718381); target element is 'DataGrid' (Name=''); target property is 'SelectedItem' (type 'Object')
据我所知,DataGrid的SelectedItem属性是试图绑定到CollectionViewSource,但我不太知道如何告诉的SelectedItem绑定到我的视图模型的SelectedRow财产。任何帮助,将不胜感激。另外,如果您需要更多关于我的设置的信息,请随时询问。
这里是我的ViewModel财产,以防不时之需:
public DataRow SelectedRow
{
get
{
return _selectedRow;
}
set
{
_selectedRow = value;
OnPropertyChanged("SelectedRow");
}
}