2016-05-22 17 views
2

私は自分のデータグリッドの色を変更する私はデザイナーでwan'tを持っているが、私はそれをデバッグするとき それはちょうどデフォルトの白に戻って変更する 私はtryed withこのどのようにデータグリッドの背景色を変更する

   <DataGrid.Resources> 
        <Style TargetType="{x:Type DataGrid}"> 
         <Setter Property="Background" Value="#FF303030"/> 
        </Style> 
       </DataGrid.Resources> 

が、それはあなたが一度だけ背景色を定義する必要が

+0

から取ら少しトリッキーです、すべてのボタンを選択して左上隅を設定するためのスタイルを、用意しました。 DataGrid宣言に直接セットしましたか?例えば'' – Tone

+0

はいまた私はそれを試しました –

+0

まだ宣言の中にそれを削除する必要がある場合は、あなたの質問に投稿したスタイルは適用されません。一度しか設定していないことを確認する必要があります。私は何を意味するのかを示す回答を投稿します。 – Tone

答えて

0

を働いていませんでした。 DataGrid宣言でも設定している場合は、スタイルをオーバーライドします。

この最初の例では、明示的に背景を赤に設定しているので、スタイルの色は無視されます。結果=赤い背景

<DataGrid Background="Red"> 
     <DataGrid.Resources> 
      <Style TargetType="{x:Type DataGrid}"> 
       <Setter Property="Background" Value="Green"/> 
      </Style> 
     </DataGrid.Resources> 
    </DataGrid> 

ただし、宣言から色を削除すると、スタイルから色が取り除かれます。この2番目の例では、緑色の背景が表示されます。 DataGridためBackgroundは、細胞の背後にある色であることを

<DataGrid> 
     <DataGrid.Resources> 
      <Style TargetType="{x:Type DataGrid}"> 
       <Setter Property="Background" Value="Green"/> 
      </Style> 
     </DataGrid.Resources> 
    </DataGrid> 

は注意(ごDataGridは、データの完全であるならば、あなたもそれを見ていないかもしれません)。これらの色を変更する場合は、DataGridRowDataGridRowHeaderDataGridColumnHeaderのスタイルを設定することもできます。また、私はそれはおそらくあなたが他の場所でそれを定義しているし、それが上書きだという可能性がありStyle datagrid table - Top left corner

<DataGrid> 
     <DataGrid.Resources> 
      <Style TargetType="{x:Type DataGrid}"> 
       <Setter Property="Background" Value="Green"/> 
      </Style> 
      <Style TargetType="{x:Type DataGridRow}"> 
       <Setter Property="Background" Value="Blue"/> 
      </Style> 
      <Style TargetType="{x:Type DataGridRowHeader}"> 
       <Setter Property="Background" Value="Yellow"/> 
      </Style> 
      <Style TargetType="{x:Type DataGridColumnHeader}"> 
       <Setter Property="Background" Value="Orange"/> 
      </Style> 
      <Style TargetType="{x:Type Button}" x:Key="{ComponentResourceKey ResourceId=DataGridSelectAllButtonStyle, TypeInTargetAssembly={x:Type DataGrid}}"> 
       <Setter Property="Background" Value="Black" /> 
      </Style> 
     </DataGrid.Resources> 
    </DataGrid> 
+0

これで問題が解決しない場合は、DataGrid用の完全なxamlソースを使用して質問を更新し、何が起こっているのかを確認してください。 – Tone

+0

ええ、それは行のために左の角にある小さなクリック可能な四角(彼らが何と呼ばれているかわからない)の色を変更する方法があります –

+0

追加のスタイルを回答に移動しました – Tone

関連する問題