在样式中设置 "WindowsState"="Maximized" 在手动 minimize/restore 后不起作用
Setting "WindowsState"="Maximized" in Style doesn't work after manual minimize/restore
我的 Window
有一个 DataTrigger
看起来像这样:
<Window.Style>
<Style TargetType="{x:Type Window}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsFullscreen}" Value="true">
<Setter Property="WindowState" Value="Maximized" />
<!-- Other setters -->
</DataTrigger>
<DataTrigger Binding="{Binding IsFullscreen}" Value="false">
<Setter Property="WindowState" Value="Normal" />
<!-- Other setters -->
</DataTrigger>
</Style.Triggers>
</Style>
</Window.Style>
在用户最小化并恢复 window(例如,单击 _ 按钮,然后单击任务栏图标)之前,这一切正常。当 IsFullscreen
发生变化时,其他二传手的影响继续显现,所以我知道触发器继续触发;问题是 WindowState
设置不再被关注。移除其他 setter 并不能解决这个问题,所以他们不应该受到责备。这是怎么回事?我能做些什么来修复它?
Windows 10 PC 上出现问题;没有关于不同 OS.
会发生什么的信息
由于可能在不同的地方设置依赖属性,因此需要一个优先级列表。您可以找到此列表 here.
当您通过单击相应按钮最小化 window 时,您正在设置 WindowState
依赖项 属性 的 本地值 。根据我们之前看到的优先级列表,您的 DataTrigger
不能再工作了。
我的 Window
有一个 DataTrigger
看起来像这样:
<Window.Style>
<Style TargetType="{x:Type Window}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsFullscreen}" Value="true">
<Setter Property="WindowState" Value="Maximized" />
<!-- Other setters -->
</DataTrigger>
<DataTrigger Binding="{Binding IsFullscreen}" Value="false">
<Setter Property="WindowState" Value="Normal" />
<!-- Other setters -->
</DataTrigger>
</Style.Triggers>
</Style>
</Window.Style>
在用户最小化并恢复 window(例如,单击 _ 按钮,然后单击任务栏图标)之前,这一切正常。当 IsFullscreen
发生变化时,其他二传手的影响继续显现,所以我知道触发器继续触发;问题是 WindowState
设置不再被关注。移除其他 setter 并不能解决这个问题,所以他们不应该受到责备。这是怎么回事?我能做些什么来修复它?
Windows 10 PC 上出现问题;没有关于不同 OS.
会发生什么的信息由于可能在不同的地方设置依赖属性,因此需要一个优先级列表。您可以找到此列表 here.
当您通过单击相应按钮最小化 window 时,您正在设置 WindowState
依赖项 属性 的 本地值 。根据我们之前看到的优先级列表,您的 DataTrigger
不能再工作了。