[英]Detect if Shell Flyout is open
有什么方法可以處理打開 Flyout 嗎? 我正在嘗試在打開 Flyout 期間或打開 Flyout 之后添加自定義行為。
我找不到任何類型的屬性,例如Shell.OnFlyoutOpening="flyout_opening"
由於沒有也不會發生OnFlyoutOpened
OnFlyoutClosed
等事件,您可以收聽 Shell PropertyChanged
事件,如果屬性為FlyoutIsPresented則執行您的代碼:
public AppShell()
{
InitializeComponent();
PropertyChanged += Shell_PropertyChanged;
}
private void Shell_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
if (e.PropertyName.Equals("FlyoutIsPresented"))
if (FlyoutIsPresented)
OnFlyoutOpened();
else
OnFlyoutClosed();
}
根據您的要求,您將定義OnFlyoutOpened()
和OnFlyoutClosed()
方法。
感謝@PureWeen 在討論中的指導。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.