窗口手动最小化重写DataTrigger中的我的WindowState setter
问题描述:
因此,我已将DataTrigger绑定到ResourceDictionary中的TriggerButton IsChecked属性。窗口手动最小化重写DataTrigger中的我的WindowState setter
按下按钮后,窗口全屏显示。
问题是,当我手动最小化窗口时,WindowState由代码设置为由WPF最小化,并且它重写了我的DataTrigger设置器,所以我无法再全屏。有什么办法来防止WPF覆盖,同时留下窗口最小化功能?
答
您可以在后面的代码中使用属性,而不是根据复选框的bool属性更新WindowState。
例子:
public WindowState MainWindowState
{
get
{
return (IsChecked) ? WindowState.Maximized : WindowState.Normal;
}
}
private bool _isChecked;
public bool IsChecked
{
get
{
return _isChecked;
}
set
{
_isChecked = value;
OnPropertyChanged("IsChecked");
OnPropertyCHanged("MainWindowState");
}
}
这是不是一个伟大的MVVM的做法,但它应该完成你想要做什么。