[英]How to allow control inside the splitview's pane close the pane in uwp?
我在splitview的窗格中有一個自定義控件。 現在,我在控件內部定義了hideinternal()
方法,該方法使控件不可見。 但是,同時我也想關閉窗格。 我該怎么辦? (我知道它是SplitView.IsPaneOpen = false;
我不知道如何在后面的控件代碼中訪問它)
我會從hideinternal
內部引發一個event
,然后可以在您認為可以隱藏窗格的視圖中對其進行訂閱。
例如在您的自定義控件中
public event EventHandler CloseSplitViewPane;
public void OnCloseSplitPaneView(object sender, EventArgs e)
{
CloseSplitViewPane?.Invoke(sender, e);
}
在內部
public void hideinternal()
{
OnCloseSplitViewPane(this, new EventArgs());
}
在您的視圖中,例如MainPage.xaml.cs構造函數(在此示例中,您的自定義控件稱為MyControl)
public MainPage()
{
this.InitializeComponent();
MyControl.CloseSplitViewPane += (sender, e) =>
{
SplitView.IsPaneOpen = false;
};
}
希望能有所幫助
我終於在控件中定義了一個事件處理程序;
public event EventHandler handlesomething;
然后在hideinternal內部通知事件;
private void hideinternal()
{
doSomething();
this.NotifyEvent(handlesomething);
}
在主頁的XAML中,我將事件處理程序簽名為頁面內的某些事件
<Control
handlesomething ="SomeMethodsInsideMainPage"
/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.