2010-07-29 67 views
2

製作一個單獨的問題,涉及到的答案評論WPF 4: What happened to DataGridColumnHeader?WPF4 DataGridHeaderBorder在XAML樣式

看來我可以在用戶控件使用DataGridHeaderBorder,單機在ResourceDictionary中,而不是在一個風格的setter一個模板。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
        > 

    <!-- Works --> 
    <DataTemplate x:Key="yomama"> 
     <DataGridColumnHeader /> 
    </DataTemplate> 

    <!-- Compile Error: error MC3074: The tag 'DataGridHeaderBorder' does not exist in XML namespace 'http://schemas.microsoft.com/winfx/2006/xaml/presentation'. --> 
    <Style x:Key="{x:Type DataGridRowHeader}" 
     TargetType="{x:Type DataGridRowHeader}"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type DataGridRowHeader}"> 
        <Grid> 
         <DataGridHeaderBorder></DataGridHeaderBorder> 
        </Grid> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

我能得到它的工作,如果我使用的xmlns:DG =「http://schemas.microsoft.com/wpf/2008/toolkit」,即使我不引用該項目WPFToolkit。我已驗證我已設置爲.NET4並引用了PresentationFramework v4。

感謝您幫助我刪除dg:hack。

+0

已提交給MS:https://connect.microsoft.com/VisualStudio/feedback/details/584894如果有機會,請投票 – Thomas 2010-08-09 20:31:03

+4

@Tom。這對我來說,如果我與 xmlns:Themes =「clr-namespace:Microsoft.Windows.Themes; assembly = PresentationFramework.Aero」 HTH – Berryl 2010-08-12 21:50:19

+0

@Berryl,謝謝,但我不應該引用PresentationFramework.Aero,我是不是該? – Thomas 2010-08-13 18:37:29

回答

7

嘗試:

xmlns:Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero" 
+2

不要忘記將'PresentationFramework.Aero'添加到您的項目參考中。 – 2012-08-29 18:50:18

2

您也可以嘗試this.In這種情況下更改標題的前景。

<Style x:Key="Consulta_Grilla_HeaderStyle" 
     TargetType="{x:Type DataGridColumnHeader}"> 
    <Style.Resources> 
     <Style TargetType="{x:Type Grid}" > 
      <Setter Property="TextBlock.Foreground" Value="Yellow"/>  
     </Style> 
    </Style.Resources> 
</Style> 
-1

添加PresentationFramework.Aero.dll引用您的項目。