2016-12-07 91 views
0

我對WPF比較陌生,並且已經檢查過幾個關於如何設計DataGrid的教程。他們都使用相同的例子,但是當我嘗試將它們實現到我的項目中時,傳來了這個煩人的信息。會員「BackGround」無法識別或無法訪問

這是我一直在努力執行的代碼,我得到這個從MSDN頁:

<Window.Resources> 
<!-- DataGrid style --> 
<Style x:Key="DataGridStyle1" TargetType="{x:Type DataGrid}"> 
    <Setter Property="ColumnHeaderStyle" Value="{DynamicResource ColumnHeaderStyle1}"/> 
</Style> 
<!-- DataGridColumnHeader style --> 
<Style x:Key="ColumnHeaderStyle1" TargetType="DataGridColumnHeader"> 
    <Setter Property="Height" Value="30"/> 
    <Setter Property="Background" Value="LightBlue"/> 
    <Setter Property="Foreground" Value="Blue"/> 
    <Setter Property="FontSize" Value="18" /> 
    <Style.Triggers> 
     <Trigger Property="IsMouseOver" Value="True"> 
      <Setter Property="ToolTip" Value="Click to sort."/> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

我使用: - C#框架4.5.1 - 摻和Visual Studio 2013 - Visual Studio 2013(我在兩個地方都遇到了這個錯誤)。

所有的導入和引用都很好。

我檢查溶液性質,我的目標平臺是「任何CPU」

我的猜測是,這個屬性可能不適用於此控制(DataGridColumnHeader)。

希望任何人都能說出正確的方法來實現我的目標。

在此先感謝

+1

我不相信MSDN上的代碼無法編譯。請提供鏈接。我以爲你一定改變了一些東西。 –

+0

https://msdn.microsoft.com/en-us/library/system.windows.controls.datagrid.columnheaderstyle(v=vs.110).aspx –

回答

0

它試圖用一個DynamicResource它被定義之前..嘗試更換樣式。另外,在這裏IMO確實不需要DynamicResource,只需將其更改爲StaticResource即可。

<Window.Resources> 
    <!-- DataGridColumnHeader style --> 
    <Style x:Key="ColumnHeaderStyle1" TargetType="DataGridColumnHeader"> 
     <Setter Property="Height" Value="30"/> 
     <Setter Property="Background" Value="LightBlue"/> 
     <Setter Property="Foreground" Value="Blue"/> 
     <Setter Property="FontSize" Value="18" /> 
     <Style.Triggers> 
      <Trigger Property="IsMouseOver" Value="True"> 
       <Setter Property="ToolTip" Value="Click to sort."/> 
      </Trigger> 
     </Style.Triggers> 
    </Style> 
    <!-- DataGrid style --> 
    <Style x:Key="DataGridStyle1" TargetType="{x:Type DataGrid}"> 
     <Setter Property="ColumnHeaderStyle" Value="{StaticResource ColumnHeaderStyle1}"/> 
    </Style> 
</Window.Resources> 
+0

我知道Styles訂單與這個問題無關。我已經嘗試更簡單的東西,如: <形式X:鍵= 「DGHeaderStyle」 的TargetType = 「DataGridColumnHeader」> 東西可能已更改版本之間因爲背景屬性似乎不是爲DataGridColumnHeader –

+0

存在屬性名稱是區分大小寫的。使用「背景」(小寫字母g) –

+1

卓越,這是我的問題,謝謝! –

相關問題