Rectangle の色を動的に変更しようとしていますが、変更しようとしても何も起こりません
<Grid x:Name="LayoutRoot">
<Grid Name="rootgrid" Margin="0,10,0,-10">
<Rectangle Name="box3" HorizontalAlignment="Stretch" Margin="56,500,71,182">
<Rectangle.Fill>
<SolidColorBrush Color="{Binding color1}" />
</Rectangle.Fill>
</Rectangle>
</Grid>
最初の 2 つの Rectangles は機能しますが、box3 は色を表示しません
public Program()
{
InitializeComponent();
MyColors color = new MyColors();
color.color1 = Colors.Yellow;
box3.DataContext = new SolidColorBrush(Colors.Yellow);;
}
private SolidColorBrush _color1;
// Declare the PropertyChanged event.
public event PropertyChangedEventHandler PropertyChanged;
// Create the property that will be the source of the binding.
public SolidColorBrush color1
{
get { return _color1; }
set
{
_color1 = value;
NotifyPropertyChanged("color1");
}
}
public void NotifyPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this,
new PropertyChangedEventArgs(propertyName));
}
}
上記はエラーをスローしませんが、box3の塗りつぶし値を変更しません。何が間違っているのかわかりません。どんな助けでも大歓迎です。
変更を反映するようにコードを更新しました
更新: 解決済み 問題は、ビジュアル スタジオが正しく更新されないことです。コードは 7.1 では機能しますが、8.0 では機能しません。