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

时间:2015-07-26 11:28:06

标签: c# xaml uwp windows-10 uwp-xaml

根据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事件。

我可以通过其他任何方式实现这一目标吗?

1 个答案:

答案 0 :(得分:9)

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

public SplitViewPage()
{
    this.InitializeComponent();

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

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