スタックパネルに2つのボタンがあり、背景と他の前景を同じ色に変更したいとします。スタックパネルの2つのボタンの色を変更する方法
私はこれをxamlで試しました。
<StackPanel
Style="{DynamicResource LeftStackPanel}"
MouseEnter="StackPanel_MouseEnter"
MouseLeave="StackPanel_MouseLeave"
>
<Button
x:Name="profile_rct"
HorizontalAlignment="Center"
Height="70"
VerticalAlignment="Center"
Width="7"
Background="{Binding
Path=BackgroundBtn,
Mode=OneWay}"
BorderThickness="1,1,1,1"
BorderBrush="DimGray" />
<Button
x:Name="profile_txt"
Content="Profil Bilgisi"
Style="{DynamicResource LeftButton}"
Foreground="{Binding
Path=BackgroundBtn,
Mode=OneWay}">
<Button.LayoutTransform>
<RotateTransform Angle="90" />
</Button.LayoutTransform>
</Button>
</StackPanel>
LeftStackPanel
では、それは位置的な引数しかないので、重要ではないと思います。 profile_rct
で背景をBackgroundBtn
に、profile_txt
にバインドします。今回は同じ変数を前景にバインドします。 LeftButton
スタイルでは、前景の値はありません。
コードでは、StackPanel_MouseEnter
とBackgroundBtn
コードです。二つの問題は、私は、私はそれらを指すだけ尖ったアイテムの色が変化している時にアイテムの色のみを変更し、のStackPanelにイベントを記述していても、ここにあり
private void StackPanel_MouseEnter(object sender, MouseEventArgs e)
{
Backgroundbtn = Brushes.CadetBlue;
}
#region ViewModelProperty
private Brush backgroundbtn;
public Brush Backgroundbtn
{
get
{
return backgroundbtn;
}
set
{
backgroundbtn = value;
OnPropertyChanged("Backgroundbtn");
}
}
private void OnPropertyChanged(string v)
{
//throw new NotImplementedException();
}
#endregion
です。私は両方の項目の色を変更したいと思います。
第2に、profile_txtの前景を変更するのではなく、背景を変更します。私はそれを理解していませんでした。