SplitView.PaneClosed 事件可用但不适用于 PaneOpened

SplitView.PaneClosed event is available but not for PaneOpened

根据 https://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.splitview.paneclosed.aspx,SplitView 控件没有 PaneOpened 事件,仅存在 SplitView 控件的 PaneClosed 事件。

我在 SplitView 窗格中有一个 Button 控件,它需要根据窗格是打开还是关闭来更改大小。所以我的计划是我将放置一段代码,在 PaneOpened 事件中将按钮大小更改得更宽,然后在 PaneClosed 事件中将其恢复为小尺寸。但是好像没有PaneOpened事件。

还有其他方法可以实现吗?

感谢 UWP 中的新 RegisterPropertyChangedCallback,您现在可以监视 属性 任何 DependencyProperty 的更改事件,包括本机事件。

public SplitViewPage()
{
    this.InitializeComponent();

    this.splitView.RegisterPropertyChangedCallback(SplitView.IsPaneOpenProperty, IsPaneOpenPropertyChanged);
}

private void IsPaneOpenPropertyChanged(DependencyObject sender, DependencyProperty dp)
{
    // put your logic here
}