この問題に遭遇したことはありませんが、最近、プロパティがシングルトンに存在する場合、プロパティへの双方向バインディングが機能しないことに気付きました。
つまり、「その他」CheckBox
はその値を更新しないということです。
それを機能させる方法について何かアイデアはありますか?前もって感謝します!
Singleton.cs
public class Singleton : INotifyPropertyChanged
{
private bool panelClosed;
static Singleton()
{
Instance = new Singleton();
}
public event PropertyChangedEventHandler PropertyChanged;
public static Singleton Instance { get; private set; }
public bool PanelClosed
{
get
{
return this.panelClosed;
}
set
{
this.panelClosed = value;
this.NotifyPropertyChanged("PanelClosed");
}
}
private void NotifyPropertyChanged(string info)
{
if (this.PropertyChanged != null)
{
this.PropertyChanged(null, new PropertyChangedEventArgs(info));
}
}
}
XAML:
<CheckBox
Content="Check/Uncheck me"
Height="16" Name="checkBox1"
IsChecked="{Binding Source={x:Static local:Singleton.Instance}, Path=PanelClosed,
UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"/>
<CheckBox
Content="Sanity Check"
Height="16" Name="checkBox2"
IsChecked="{Binding Source={x:Static local:Singleton.Instance}, Path=PanelClosed,
UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />