我需要在我的WPF应用程序中使用FolderBrowser
来选择包含图像的文件夹。我知道System.Windows.Forms
版本,但它使MessageBox
含糊不清,这使得难以向我的用户显示其他消息。有没有不同的方式来做到这一点,或者我应该使用自定义控件。还是有办法摆脱模棱两可的错误?实现文件夹浏览器
Q
实现文件夹浏览器
0
A
回答
3
就进口形式:
using Forms = System.Windows.Forms;
然后,当你想创建一个文件夹对话框,你可以这样写:
Forms.FolderBrowserDialog dlg = new Forms.FolderBrowserDialog();
这应该摆脱模糊性。
+0
谢谢你工作完美 – daJbot
0
WinForms的MessageBox位于不同的名称空间中。因此,如果您的源代码文件开头的名称空间都有using
(对于Forms,则为System.Windows.Forms
,对于WPF为Systems.Windows
),则必须在两个名称空间中访问具有相同名称的类时提供完整名称空间。
using System.Windows;
using System.Windows.Forms;
[...]
public void MyFunction()
{
System.Windows.Forms.MessageBox.Show("Hello, World!");
}
0
由于暧昧的错误发生,因为2个或更多的东西具有相同的名称和签名,您只需调用的MessageBox绕过它时更加具体。
blah.blah.MessageBox("message");
代替
MessageBox("message");
0
不要把System.Windows.Forms
在using
,使您避免暧昧MessageBox
。
public bool SelectDirectory(out String directoryName)
{
System.Windows.Forms.FolderBrowserDialog dlg = new System.Windows.Forms.FolderBrowserDialog();
directoryName = String.Empty;
dlg.SelectedPath = String.Empty;
if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
directoryName = dlg.SelectedPath;
return true;
}
else
{
return false;
}
}
只需包含此方法并在其他地方继续使用WPF。
相关问题
- 1. 通过浏览器实现.less文件
- 2. 文件浏览器对话框实现
- 3. 实现浏览器
- 4. 从网络浏览器打开本地文件夹浏览器
- 5. 浏览器EventListenerList实现
- 6. EcmaScript 5浏览器实现
- 7. 移动浏览器插件实现
- 8. 网络文件夹浏览器服务
- 9. 浏览器不显示文件夹
- 10. C#中的文件夹浏览器#
- 11. MFC文件夹浏览器IFileOpenDialog
- 12. iOS Safari浏览器类文件夹
- 13. 文件夹浏览器选项
- 14. 在浏览器中查看隐藏文件夹“浏览”
- 15. 浏览子文件夹
- 16. TFS文件夹浏览
- 17. 如何浏览文件夹
- 18. 如何实现支持文件夹树上传的跨浏览器上传?
- 19. 用于在iOS中实现文件浏览器的控制器
- 20. Google Chrome浏览器如何实现Chrome浏览器?
- 21. 浏览量实现
- 22. 文件\文件夹在Aptana Studio的项目浏览器中出现两次
- 23. 高效实现文件浏览器 - Android电子
- 24. 基于多选树视图实现文件浏览器
- 25. 这个文件在浏览器里面如何实现?
- 26. 如何在iOS中实现文件浏览器
- 27. C++库,像Web浏览器一样实现文件缓存
- 28. 浏览文件夹和文件资产文件夹内
- 29. 组件FormFile浏览文件夹级别
- 30. 带有MVC 2的文件夹/文件浏览器?
什么模糊错误? – Lloyd
http://tyburnfolderbrowsers.codeplex.com/ –
或[Windows 7 API代码包](http://archive.msdn.microsoft.com/WindowsAPICodePack)中的'CommonOpenFileDialog'。只需将'IsFolderPicker'属性设置为true即可。看起来好多了。 – Clemens