Поэтому я хотел попробовать отключить кнопку «X» (Закрыть) в моем приложении UWP.Для тестирования я создал новое приложение UWP.Затем я пошел к своим проектам Visual Studio:
\ Visual Studio 2015 \ Projects \ closerequesthandled \ closerequesthandled
и открыл Package
и отредактировал следующие вещи:
Сначала я добавилxmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
и rescap
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap mp rescap">
Затем я добавил <rescap:Capability Name="confirmAppClose"/>
<Capabilities>
<Capability Name="internetClient" />
<rescap:Capability Name="confirmAppClose"/>
</Capabilities>
Я получаю это предупреждение:
Но я читал, что это предупреждение ничего не делает, кроме предупреждения, поэтому оно все равно должно сработать.
Затем я добавил это в качестве теста в MainPage.xaml.cs:
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
SystemNavigationManagerPreview.GetForCurrentView().CloseRequested += this.OnCloseRequest;
}
private void OnCloseRequest(object sender, SystemNavigationCloseRequestedPreviewEventArgs e)
{
var x = 0;
}
}
НоSystemNavigationManagerPreview
и SystemNavigationCloseRequestedPreviewEventArgs
получает красное подчеркивание:
The name `SystemNavigationManagerPreview` does not exist in the current context
и
The type or nmespace name `SystemNavigationCloseRequestedPreviewEventArgs` could not be found (are you missing a using directive or an assembly reference?)
Как я могу сделать эту работу?