2011-03-30 20 views
3

嘿,我發現這個使用devexpress網格。我想知道這個語法是如何在密鑰中指定的。WPF:這個關鍵語法是如何工作的?

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

我已經習慣了

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

任何想法?

+0

哪一部分讓您感到困惑?命名空間語法或鍵引用? – rrhartjr 2011-03-30 20:02:58

回答

1

鍵可以是任何對象,包括字符串。還有一種特殊類型的密鑰,稱爲ComponentResourceKey,它允許您訪問可能在另一個程序集中的資源。由於ComponentResourceKey存儲資源的名稱以及存儲它的程序集。

GridColumnHeaderThemeKey可能返回一個ComponentResourceKey,其中已經填寫了程序集信息。或者,它可以擴展ComponentResourceKeyStatic標記擴展,以便重用其資源。

如果您在Reflector中打開它,那麼您應該能夠確切地確定它的功能。

只是爲了澄清,GridColumnHeaderThemeKey是custom markup extension,如解釋here

1

SolidColorBrush正在設置爲通過使用特定的數據網格畫筆HorizontalGridLinesBrush將網格列着色的顏色(黑色),它將畫筆設置爲應用於水平線。

例如,將網格線設置爲紅色。

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

此鏈接介紹你可以使用不同的畫筆樣式。 DataGrid Brushes