MVVM Silverlight DataGrid:绑定列集合



我需要访问模型类中数据网格的columns集合,但当我尝试此操作时,它表明数据网格的columns属性没有可访问的setter。

那么,访问模型类中的Columns属性有什么解决方法吗?

我的XAML代码如下:

<sdk:DataGrid RowDetailsVisibilityMode="VisibleWhenSelected"  Columns="{Binding GridColumns, Mode=TwoWay}"
                      AutoGenerateColumns="False" IsReadOnly="True" SelectionMode="Single" 
                      ClipboardCopyMode="ExcludeHeader" HorizontalAlignment="Stretch" 
                      VerticalAlignment="Stretch" Margin="0,0,0,27" HeadersVisibility="Column" Grid.Row="1"
                      SelectedItem="{Binding SelectedItem, Mode=TwoWay}"
                      ItemsSource="{Binding DataList, Mode=TwoWay, ValidatesOnDataErrors=True, NotifyOnValidationError=True}" >

不能绑定到Columns属性,因为它不是DependencyProperty。因此,如果需要从其他地方传递列,只需从代码中添加列即可。如果它们不依赖于上下文,那么在XAML中分配它们可能会更好。

顺便说一句,"在我的模型中访问数据网格的列集合"对MVVM来说听起来相当奇怪。通常,模型甚至不应该知道什么是DataGrid

相关内容

  • 没有找到相关文章

最新更新