我第一次在 WPF 中实现 FolderBrowserDialog,但我一点也不喜欢它......
除了我发现我的项目中没有引用 Windows.Forms 的问题之外,现在我在尝试查看 DialogResult 返回值是什么时遇到了麻烦......
使用 OpenFileDialog,过去我是这样完成的:
OpenFileDialog ofd = new OpenFileDialog();
Nullable<bool> result = ofd.ShowDialog();
if (result == true)
{
// all went well, carry on and do your thing here
}
不幸的是,我现在收到了关于从 DialogResult 类型转换为 bool 以及任何你有的东西的错误。
似乎找不到任何关于如何在 WPF 中使用对话框来完成此步骤的信息,任何人都可以解释一下吗?
提前致谢!
编辑
这是我修改后的代码,没有类型转换错误。我不确定要检查什么值result
。通常我会使用DialogResult.OK
except 在这里没有显示为有效值。
private void btnBrowse_Click(object sender, RoutedEventArgs e)
{
if (cmbTemplate.SelectedItem == "Blockbusters")
{
FolderBrowserDialog fbd = new FolderBrowserDialog();
DialogResult result = fbd.ShowDialog();
//
// ERROR: 'System.Nullable<bool>' does not contain a definition for 'OK'
// and no extention method 'OK' accepting a first argument of type
// 'System.Nullable<bool>' could be found.
//
if (result == DialogResult.OK)
{
txtSource.Text = fbd.SelectedPath;
}
}
}