Q054. XamDataGrid で掛線を指定するには?

A. Style で CellValuePresenter.BorderThickness プロパティと CellValuePresenter.BorderBrush プロパティを設定します。以下のサンプルの場合、上下左右すべての BorderThickness を同じにすると、左右で重なるところが重複して描画されてしまい見苦しくなるため、わざと左と下側のみ掛線を0.5ピクセルで描画するよう設定しています。

<Style TargetType="{x:Type igDP:CellValuePresenter}">
    <Setter Property="BorderThickness" Value="0.5,0,0,0.5"/>
    <Setter Property="BorderBrush" Value="DimGray" />
</Style>
・・・・・・・
<igDP:XamDataGrid BindToSampleData="True" />



ただし当然ながらテーマを指定すると掛線は無効になります。試しに Office2010Blue のテーマを設定したら、見事に掛線は無効になりました。テーマを有効にしたまま掛線を設定するには、テーマを改造するしかなさそうですね。

<Style TargetType="{x:Type igDP:CellValuePresenter}">
    <Setter Property="BorderThickness" Value="0.5,0,0,0.5"/>
    <Setter Property="BorderBrush" Value="DimGray" />
</Style>
・・・・・・・
<igDP:XamDataGrid BindToSampleData="True" Theme="Office2010Blue" />




関連記事NetAdvantage - 組み込みテーマを使用


WPF FAQ の目次に戻る