对话框Winui3

如何创建对话框

若要创建对话框,你使用 ContentDialog 类。 你可以使用代码或标记创建对话框。 尽管使用 XAML 定义 UI 元素通常更容易,但对于简单对话框,实际上只使用代码更容易。

三个对话框按钮

ContentDialog 有三种不同类型的按钮可用于构建对话框体验。

  • CloseButton - 必需 - 表示允许用户退出对话框的安全、无破坏性操作。 显示为最右侧的按钮。
  • PrimaryButton - 可选 - 表示第一个“执行”操作。 显示为最左侧的按钮。
  • SecondaryButton - 可选 - 表示第二个“执行”操作。 显示为中间的按钮。
 private async void myButton_Click(object sender, RoutedEventArgs e)
        {
            ContentDialog noWifiDialog = new ContentDialog
            {
                Title = "Subscribe to App Service?",
                Content = "Listen, watch, and play in high definition for only $9.99/month. Free to try, cancel anytime.",
                CloseButtonText = "Not Now",
                PrimaryButtonText = "Subscribe",
                SecondaryButtonText = "Try it",
                //设置默认按钮
                DefaultButton= ContentDialogButton.Primary,
                
            };
            //必须设置XamlRoot,否则会报错误:Value does not fall within the expected range.
            if (ApiInformation.IsApiContractPresent("Windows.Foundation.UniversalApiContract", 8))
            {
                noWifiDialog.XamlRoot =this.Content.XamlRoot;
            }
            ContentDialogResult result = await noWifiDialog.ShowAsync();
            if (result == ContentDialogResult.Primary)
            {
                mybtn.Content = "主按钮";
            }
            else if(result == ContentDialogResult.Secondary)
            {
                mybtn.Content = "次按钮";
            }
            else
            {
                mybtn.Content = "取消";
            }
        }

警告

每次只能在每个线程中打开一个 ContentDialog。 尝试打开两个 ContentDialog 会引发异常,即使尝试在独立的 AppWindow 中打开。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值