我使用了一个StateManager
实现该模式的自定义类,Singleton
以便应用程序中只有以下实例之一:
public class StateManager : INotifyPropertyChanged
{
private static StateManager instance = new StateManager();
/// <summary>
/// Initialises a new empty StateManager object.
/// </summary>
public StateManager() { }
/// <summary>
/// Gets the single available instance of the application StateManager object.
/// </summary>
public StateManager Instance
{
get { return instance; }
}
...
}
然后在我的基本视图模型中引用它,以便我的所有视图模型都可以访问它:
public StateManager StateManager
{
get { return stateManager.Instance; }
}
此外,因为它在我的视图模型类中被引用,我也可以Bind
对 XAML 中的值进行引用:
<Window Title="{Binding StateManager.WindowTitle, Mode=OneWay}" ... />