<DrawingImage x:Key="HexagonImage">
<DrawingImage.Drawing>
<DrawingGroup>
<GeometryDrawing Brush="White"
Geometry="M 250,0 L 750,0 L 1000,433 L 750,866 L 250,866 L 0,433 Z">
<GeometryDrawing.Pen>
<Pen Brush="Black" Thickness="10" LineJoin="Round"/>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup>
</DrawingImage.Drawing>
</DrawingImage>
<Style x:Key="HexagonButton" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Image x:Name="hexImg" Source="{StaticResource HexagonImage}"/>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
とコントロールの色を変更しかし役に立たない。WPF:プログラムで、私はそのスタイルとしてこのHexagonButtonを持っているボタンを、持っている、と私はプログラム的に、Iv'eはBackgroupプロパティを変更しようとした その色を変更したいカスタムスタイル
私がそうした唯一のやり方は、新しいDrawingイメージを使って全く新しいスタイルを作成することです。 と割り当ててください。しかし、私は確かにそうする簡単な方法があります。
小さなメモ:RelativeSource AncestorType = {x:タイプボタン}の代わりに 'RelativeSource TemplatedParent'(あるいは' TemplateBinding')を使ってみてください。 –