WPF:这个关键语法如何工作?

时间:2011-03-30 18:11:34

标签: c# wpf xaml

嘿伙计们,我发现这是使用devexpress网格。我想知道这个语法是如何在密钥中指定的。

<SolidColorBrush x:Key="{dxgt:GridColumnHeaderThemeKey ResourceKey=HeadersVerticalLineBrush}" Color="#FFFFFFFF" />

我习惯了

<SolidColorBrush x:Key="MyBrush" Color="#FFFFFFFF" />

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

键可以是任何对象,包括字符串。还有一种称为ComponentResourceKey的特殊键,它允许您访问可能位于另一个程序集中的资源。由于ComponentResourceKey存储资源的名称,以及存储它的程序集。

GridColumnHeaderThemeKey可能会返回一个ComponentResourceKey,其中已经填写了程序集信息。或者,它可以扩展ComponentResourceKeyStatic标记扩展,以便更轻松地重用它的资源。

如果你在Reflector中打开它,那么你应该能够准确地确定它的作用。

为了澄清,GridColumnHeaderThemeKey是custom markup extension,正如here所述。

答案 1 :(得分:1)

SolidColorBrush被设置为颜色(黑色),通过使用特定数据网格画笔HorizontalGridLinesBrush为网格的颜色着色,该画笔设置应用于水平线的画笔。

例如,将网格线设置为红色。

<SolidColorBrush x:Key="{dxg:GridColumnHeaderThemeKey ResourceKey=HeadersVerticalLineBrush}" Color="Red"/>
<SolidColorBrush x:Key="{dxg:GridRowThemeKey ResourceKey=GridDataRowDelimiterBrush}" Color="Red"/>

此链接描述了您可以使用的不同画笔样式。 DataGrid Brushes