我通常使用以下XAML指定表的clickettiness。
<DataGrid>
<DataGrid.Resources>
<Style TargetType="DataGridRow">
<EventSetter Event="MouseClick" Handler="ClickettyClick"/>
</Style>
</DataGrid.Resources>
</DataGrid>
刚才,我发现intellisense为我提供了属性 Resources ,而里面标签 DataGrid 的下颚括号。在纯粹的好奇心的推动下,我去了它,并得到了类似的东西。
<DataGrid Resources="" />
后一个示例中的 Resources 属性是否等同于第一个中的内部标记 Grid.Resources ?如果是这样,如何制定字符串的内容(即属性的参数),使其对应多标签版本?
我几乎认为这不会更顺畅,但是:(a)一个人永远不会知道,(b)学习处理代码的新方法总是很有趣。
答案 0 :(得分:1)
它可以是资源字典资源
<UserControl.Resources>
<ResourceDictionary x:Key="MyDictionary"
Source="Dictionary1.xaml" />
</UserControl.Resources>
<DataGrid Resources="{StaticResource MyDictionary}" />
整合@Clemens的评论,应该非常明确地指出,可以用元素语法编写的某些内容不能用属性语法编写。
除非有一个特定的标记扩展,否则在元素语法中特别没有在属性语法中创建就地对象的方法。
此外,框架中没有像资源字典标记扩展这样的东西。