ユーザーがマウスの上にマウスを置くと、スタックパネル内の2つの要素の色を変更したいと思います。 wpfでこれを行う方法はありますか?なぜなら、私はC#コードを「スタイリングのもの」からきれいに保つことが好きだからです。1つのマウスオーバートリガーで複数の要素を変更する
これは私がこれまで行ってきたことです。スタックパネル内の各要素にトリガーを追加するだけです。しかし、それはあなたの色を変更するために各要素の上にマウスを移動する必要があるので、静かではない。
近い既存のスタイルにこだわっ <StackPanel Orientation="Horizontal">
<StackPanel.Resources>
<Style TargetType="{x:Type FrameworkElement}">
<Setter Property="Label.Foreground" Value="#FF0296AA" />
<Setter Property="Rectangle.Fill" Value="#FF0296AA" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Label.Foreground" Value="#FFA6FAFA" />
<Setter Property="Rectangle.Fill" Value="#FFA6FAFA" />
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type Label}" BasedOn="{StaticResource {x:Type FrameworkElement}}" />
<Style TargetType="{x:Type Rectangle}" BasedOn="{StaticResource {x:Type FrameworkElement}}" />
</StackPanel.Resources>
<Label Content="Create an account" VerticalAlignment="Top" Padding="0,1,5,1" FontSize="13" Height="21" Cursor="Hand"/>
<Rectangle Height="12" Margin="0,4,0,0" Width="15" RenderTransformOrigin="0.5,0.5">
<Rectangle.OpacityMask>
<ImageBrush ImageSource="Images/Controls/external-link-mask.png" Stretch="Uniform"/>
</Rectangle.OpacityMask>
</Rectangle>
</StackPanel>
_スタックパネル内の2つの要素の色を変更する場合は、ユーザーのマウスがその上にマウスを置いてください。_ _ _を定義します。 _it_はスタックパネルですか? – Natrium
トリガーでは、TextBlockについて言及していますが、StackPanelではTextBlockはありません。 – Natrium
スタックパネルの内側には2つの要素があります。 1つのラベルと1つの長方形。私はそれらの色を変更したい。 – Tom