我有一个窗口可以显示一个XamDataGrid。但是,我计划有几个XamDataGrids可供选择:
每个这样的网格都有自己的DataSource和ContextMenu。的思想是在运行时中选择一个网格。我在想我怎么设计这个。
可以让Styles对应于ResourceDictionary中的每个网格,然后在运行时将一个应用到窗口中的单个XamDataGrid中吗?我不太熟悉WPF...can,有人给我一些关于这个或其他方法的建议吗?
到目前为止,这就是我所拥有的:
ResourceDictionary.xaml
<Style x:Key="XamDataGridStyle" TargetType="{x:Type igDP:XamDataGrid}">
</Style>MainWindow.xaml
<igDP:XamDataGrid Name="xamDataGrid1" Style={StaticResource XamDataGridStyle} />发布于 2014-08-22 17:09:00
将内容控件与ContentTemplateSelector一起使用:
http://msdn.microsoft.com/en-us/library/system.windows.controls.contentcontrol.contenttemplateselector(v=vs.110).aspx
ContentControl将是网格内容的占位符,内容将绑定到您的DataSource,您将在运行时设置它。您将在ContentTemplateSelector中实现一些特定的逻辑,以返回一个特定的DataTemplate (定义在您的资源中的某个地方),该DataTemplate将包含基于内容(dataSource)的特定网格控件。
通过这种方式,您可以为每种网格类型创建单独的数据模板,并使用它们自己的上下文菜单等,并通过删除内容控件来统一地显示它们。内容控件将使用ContentTemplateSelector逻辑根据其内容呈现适当的数据模板。
https://stackoverflow.com/questions/14969424
复制相似问题