所以我在ResourceDictionary中将DataTrigger绑定到TriggerButton IsChecked属性。
按下按钮后,窗口全屏显示。
问题是,当我手动最小化窗口时,WPF会在代码中设置WindowState以最小化并覆盖我的DataTrigger设置器,因此我无法再次全屏显示。有没有办法阻止WPF覆盖,同时保留窗口最小化的功能?
答案 0 :(得分:0)
您可以在后面的代码中使用属性,而不是根据复选框的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方法,但它应该完成你想要做的事情。