如果满足特定条件,有没有办法防止 UWP Splitview 关闭?我实现了以下 PropertyChange 回调:
MySplitView.RegisterPropertyChangedCallback(SplitView.IsPaneOpenProperty, MySplitViewPaneOpenPropertyChanged);
Run Code Online (Sandbox Code Playgroud)
看起来像这样:
private void MySplitViewPaneOpenPropertyChanged(DependencyObject sender, DependencyProperty dp)
{
if (preventClose == true)
{
TrashSplitView.IsPaneOpen = true;
}
}
Run Code Online (Sandbox Code Playgroud)
此代码使拆分视图窗格保持打开状态,但会短暂启动动画。有没有办法阻止动画开始?
在深入研究 Splitview 必须提供的方法和事件之后,我找到了一个简单的解决方案。希望这个答案能帮助其他人尝试做同样的事情。
Splitview 类上有一个名为“PaneClosing”的事件
<Splitview PaneClosing="SplitView_PaneClosing"/>
Run Code Online (Sandbox Code Playgroud)
在事件处理程序中,您可以完全取消此关闭动画,如下所示:
private void SplitView_PaneClosing(SplitView sender, SplitViewPaneClosingEventArgs args)
{
if (preventClose == true)
{
args.Cancel = true;
}
}
Run Code Online (Sandbox Code Playgroud)