簡體   English   中英

UWP Template10 SystemNavigationManager的“后退”按鈕添加GotFocus事件

[英]UWP Template10 SystemNavigationManager Back button adding GotFocus event

我試圖在模板10的“后退”按鈕上添加OnGotFocus事件,如下所示:

在PageViewModels.cs中:

 public override async Task OnNavigatedToAsync(object parameter, NavigationMode mode, IDictionary<string, object> suspensionState)
    {
        SystemNavigationManager.GetForCurrentView().BackRequested += OnGotFocus;
    }

private async void OnGotFocus(object sender, BackRequestedEventArgs e)
    {
        ....
    }

但這不起作用。 誰能給我任何指示?

您在代碼段中所做的是為BackRequested事件連接了處理程序。 系統在系統中注冊了返回應用程序的請求時,將觸發此事件。 用戶可以在台式機上的平板電腦模式下,在任務欄中點擊“后退”按鈕,或者在“窗口模式”下單擊應用程序標題欄中的“后退”按鈕,或者在移動設備上按“后退”按鈕來觸發此操作。

無論哪種方式,此事件都會由系統觸發,並且它唯一要做的就是調用您的方法。 方法名稱根本沒有關系

我認為您應該復習有關C#中事件處理的一些基礎知識,以消除任何混淆。

為了能夠使用OnGotFocus事件,您將必須在XAML中創建自己的后退按鈕並將處理程序添加到此按鈕,因為只有這樣,您才能完全控制該控件。 如果僅使用系統提供的BackRequested事件,則系統處於控制之中, BackRequested事件外,您無法自定義任何內容。

<Button GotFocus="OnGotFocus" Content="My back button" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM