[英]WinUI 3 UWP - Dialog
我正在為 WinUI3 UWP 中的 Windows 11 開發一個新應用程序,我想顯示一個對話框以提供安全操作,如 Microsoft Docs 的此示例: Z5E056C500A1C4B6A7110B50D80-us/BADE5Zwindows://docs.設計/控制/對話框和彈出/對話框
private async void DisplayNoWifiDialog()
{
ContentDialog noWifiDialog = new ContentDialog
{
Title = "No wifi connection",
Content = "Check your connection and try again.",
CloseButtonText = "Ok"
};
ContentDialogResult result = await noWifiDialog.ShowAsync();
}
當用戶單擊我的 MainPage.xaml 上的按鈕時顯示該對話框,並且當用戶單擊“確定”時返回 MainPage.xaml,但是當我運行我的程序時給我這個錯誤:“XamlRoot 必須顯式設置為無父彈出窗口”
我該如何解決這個問題?
謝謝!
看起來您正在開發一個 WinUI3 應用程序。 正如@Raymond Chen 提到的,您必須將XamlRoot property
添加到ContentDialog 。
Xaml:
<StackPanel x:Name="MyPanel" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Button x:Name="myButton" Click="myButton_Click">Click Me</Button>
</StackPanel>
代碼隱藏:
private async void myButton_Click(object sender, RoutedEventArgs e)
{
ContentDialog noWifiDialog = new ContentDialog
{
Title = "No wifi connection",
Content = "Check your connection and try again.",
CloseButtonText = "Ok"
};
//set the XamlRoot property
noWifiDialog.XamlRoot = MyPanel.XamlRoot;
ContentDialogResult result = await noWifiDialog.ShowAsync();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.