调用Windows.UI.Popups.MessageDialog.ShowAsync会引发异常

时间:2013-11-28 08:33:09

标签: c# c#-4.0 windows-8 .net-4.5

我正在尝试使用Windows 8桌面应用程序消息对话框,
运行以下代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using Windows.UI.Popups;

namespace WpfApplication1
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            MessageDialog dialog = new MessageDialog("Hope it will work", "TRY");
            await dialog.ShowAsync();
        }
    }
}

但我收到以下异常:

“找不到元素。(HRESULT异常:0x80070490)”

任何人都可以解释原因吗?我该如何解决这个问题?

注意: 我将以下属性添加到csproj文件中:

<TargetPlatformVersion>8.0</TargetPlatformVersion>

对项目引用的“Windows.winmd”的引用

1 个答案:

答案 0 :(得分:2)

如果你看看这里

http://msdn.microsoft.com/library/windows/apps/BR208674

在底部你会看到:

支持的最低客户端 Windows 8 [仅限Windows应用商店应用]

如果您不是在开发Windows应用商店应用(Windows 8 特定应用),而是使用WPF应用,请使用MessageBoxhttp://msdn.microsoft.com/en-us/library/ms602949.aspx

我发现你遇到了困惑。 “Windows 8”用作“Windows应用商店应用”(“Windows 8应用”,“WinRT应用”)。