在OpenFileDialog中自定义文本和下拉按钮选项

本文关键字:按钮 选项 文本 OpenFileDialog 自定义 | 更新日期: 2023-09-27 18:03:56

我最近试用了最新版本的WinZip,在"Zip"文件对话框中看到了文本和选项…
我如何在c#中做到这一点?
顺便说一下,如果你还没弄明白的话……我说的是Vista/7打开文件对话框。
我宁愿有代码,而不是"您从[本文]中取出[x]行代码来完成[这个],然后自己解决其余的问题"。如果可以,我早就这么做了。

在OpenFileDialog中自定义文本和下拉按钮选项

我使用了win32 API函数来定制对话框。只有当我的应用程序在Windows Vista或7上运行时才有效。

(很抱歉这么晚才回答,但我忘了这个问题…)

据我所知,使用默认的打开文件对话框无法执行任何重要的定制。你必须自己创造。这还不算太糟,因为您可以使用文件浏览器控件来完成大多数复杂的操作。


编辑:显然"文件浏览器控制"来自我的想象,而不是我的记忆。我找不到标准的微软文件浏览器控件。所以你的选项是:

  • 下载第三方文件浏览器控件,并将其集成到您的对话框中。
  • (更有可能)-从不同的角度处理你的设计问题。Winzip对话框究竟是做什么的,为什么要复制它?

您可以使用IFileDialogCustomize接口来实现自定义,但这可能非常麻烦,耗时且不灵活。

另一种选择是使用第三方控件,如Shell MegaPack,这些控件可以将Windows资源管理器(如文件/文件夹浏览)放在您自己的窗体中。

免责声明:我在LogicNP软件公司工作,Shell MegaPack的开发商