XAMLで境界線のMouseOverイベント/トリガーを設定する方法は?マウスが境界線上にあるときに境界線を緑色に変え、マウスが境界線上になくなったときに境界線を青色に戻します。次のコードを使用できないのはなぜですか。
<Border
Name="ClearButtonBorder"
Grid.Column="1"
CornerRadius="0,3,3,0"
Background="Blue">
<Border.Triggers>
<Trigger Property="Border.IsMouseOver" Value="True">
<Setter Property="Border.Background" Value="Green" />
</Trigger>
<Trigger Property="Border.IsMouseOver" Value="False">
<Setter Property="Border.Background" Value="Blue" />
</Trigger>
</Border.Triggers>
<TextBlock
HorizontalAlignment="Center"
VerticalAlignment="Center"
Text="X" />
</Border>
私は実際にこれらのトリガーとスタイルをWPFで取得しません。このような単純なことを達成できないのは、このようなドラッグです。私に解決策を提供し、私のコードで何が間違っているのかを理解してください。本当にありがとう。
はい、これは混乱しています...
このブログ投稿 によると、これはWPFの省略のようです。
機能させるには、スタイルを使用する必要があります。
<Border Name="ClearButtonBorder" Grid.Column="1" CornerRadius="0,3,3,0">
<Border.Style>
<Style>
<Setter Property="Border.Background" Value="Blue"/>
<Style.Triggers>
<Trigger Property="Border.IsMouseOver" Value="True">
<Setter Property="Border.Background" Value="Green" />
</Trigger>
</Style.Triggers>
</Style>
</Border.Style>
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="X" />
</Border>
ほとんどの人はこの種のことをスタイルに取り入れる傾向があるため、この問題はそれほど一般的ではないので、複数のコントロールで使用できます。