0
私はXAMLで新しく、簡単なゲームでボタンに問題があります。 私は円のボタンを作って色を変える必要がありますが、私のボタンはアニメートのようなボタンのデフォルトのスタイル、ホバーのポインタの変化、アニメーションのクリックなどを与えず、色も変わりません。スタイルをカスタマイズしてXAMLとC#の円ボタンを作成する方法は?
<Page.Resources>
<SolidColorBrush x:Key="RedColorXX" Color="Red" />
</Page.Resources>
<Button x:Name="btnRed" Style="{StaticResource btnColor}" Content="Red" HorizontalAlignment="Left" Height="228" Margin="62,261,0,0" VerticalAlignment="Top" Width="228" Background="#FFCA6969" Click="colors_Click" FontSize="0.01" BorderBrush="Azure" Grid.Column="1" >
<Button.Template >
<ControlTemplate TargetType="Button" >
<Grid >
<Path Stretch="Uniform" UseLayoutRounding="False" Fill="#FFCA6969">
<Path.Data>
<EllipseGeometry RadiusX="1" RadiusY="1"/>
</Path.Data>
</Path>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
と仕事をdosen't色の変化コード:
は、ここに私のXAMLです!例えば
btnRed.Background = (SolidColorBrush)Resources["RedColorXX"];
あなたのクリックがあなたの楕円の色を変更する必要があります。これを楕円の内側で試してください。Fill = "{バインディングElementName = btnRed、Path =背景}" – adminSoftDK
[MSDNからの[default Buttonテンプレート]のバージョンをコピーできます(https://msdn.microsoft.com/en-us/library) /ms753328(v=vs.100).aspx)、ControlTemplateをここにあるものに変更してください。それはあなたのための独自のカスタムシェイプで、すべてのデフォルトの動作を与える必要があります。 – Rachel
彼は 'Fill'を' {TemplateBinding Background} 'に変更する必要がありますが、それは間違いなく最適なルートです。 –