我的代码有问题。我在我的项目中使用 OpenFileDialog,当我调用方法 ShowDialog 时抛出异常。我不明白为什么。
private void open_FileMenu(object sender, RoutedEventArgs e)
{
OpenFileDialog browser = new OpenFileDialog();
browser.AddExtension = true;
browser.Filter = "Audio, Video File | *.wma; *.mp3; *.wmv";
browser.Title = "Choose your file";
if (browser.ShowDialog() == System.Windows.Forms.DialogResult.Yes) // Exception thrown here
{
try
{
string FileName = browser.FileName;
MyMedia.Source = new Uri(FileName);
}
catch (Exception ex)
{
Console.Write(ex.Message);
}
}
这个异常(exception)说
A first chance exception of type 'System.ComponentModel.Win32Exception' occurred in WindowsBase.dl
附加信息:参数不正确
有人可以帮助我吗?
最佳答案
在 WinForms 中 CommonDialog.ShowDialog()
来自 System.Windows.Forms.dll并返回一个 DialogResult
。
在 WPF 中 CommonDialog.ShowDialog()
来自 PresentationFramework.dll并返回一个 bool?
这自然会导致很多困惑。最终你想要这个。
if (browser.ShowDialog() == true)
关于C# 和 WPF,SaveFIleDialog 抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14775280/