c#:如何使用 P/Invoke 更改FolderBrowserDialog 的标题?

发布于 2024-08-21 19:27:22 字数 239 浏览 2 评论 0原文

FolderBrowserDialog 显示文本“浏览文件夹”作为标题。

此链接表示使用 P/Invoke 我们可以做到这一点。那是什么? 如何使用 P/Invoke 来实现此目的?

还有其他方法可以改变这种情况吗?

FolderBrowserDialog displayed a text "Browse For Folder" as the title.

This Link says that using P/Invoke we can do that. Whats that?
How to use P/Invoke for this?

Is there any other way also to change this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

戏舞 2024-08-28 19:27:22

简而言之,答案是否定的。 P/Invoke 允许您调用本机 Windows API 函数。您可以在这里阅读一篇旧的但仍然相关的文章:http:// /msdn.microsoft.com/en-us/magazine/cc164123.aspx

不幸的是,您需要调用的特定函数ShBrowseForFolder 不允许您为窗口标题指定不同的文本。

In short, the answer is no. P/Invoke allows you to call native Windows API functions. You can read an old, but still relevant article, about it here: http://msdn.microsoft.com/en-us/magazine/cc164123.aspx

Unfortunately, the specific function you would need to invoke ShBrowseForFolder does not allow you to specify different text for the window title.

递刀给你 2024-08-28 19:27:22

我认为我们无法更改文件夹浏览器对话框的标题,如果有办法的话,它可以使用复杂的 p/Invoke 调用。

我知道有一个有趣的 XBrowseForFolder - SHBrowseForFolder 的包装器替代方案可用的。

它是一个 vc++ 组件,您可以在您的 c# 项目中使用此组件,而您只需很少的编码工作。

I dont think we can change the caption of the folder browser dialog, if there is a way then its using complex p/Invoke calls.

I know there is a interesting XBrowseForFolder - Wrapper for SHBrowseForFolder alternative available.

Its a vc++ component, you can use this component in your c# project with little coding effort from your side.

开始看清了 2024-08-28 19:27:22

如果您正在开发适用于 Windows 7 的软件(并使用 .NET 3.5 SP1),则可以下载并使用 Windows API 代码包 带来了一堆附加控件,这些控件可以提供FolderBrowserDialog 的替代方案。

以下是 Windows API 代码包中包含的内容

Windows 7 任务栏

  • 跳转列表、图标覆盖、进度栏、选项卡式缩略图和缩略图工具栏

Windows Shell

  • Windows 7 库
  • Windows Shell 搜索 API 支持
  • 资源管理器浏览器控件
  • 层次结构Shell 命名空间实体的
  • Windows Shell 属性系统
  • Shell 对象的拖放
  • Windows Vista 和 Windows 7 通用文件对话框,包括自定义控件
  • 已知文件夹和非文件系统容器

DirectX

  • Direct3D 11.0、Direct3D 10.1/10.0、DXGI 1.0/1.1、Direct2D 1.0 、DirectWrite、Windows 成像组件 (WIC) API

其他

  • Windows Vista 和 Windows 7 任务对话框
  • 传感器平台 API
  • 扩展语言服务 API
  • 电源管理 API
  • 应用程序重新启动和恢复 API
  • 网络列表管理器 API
  • 命令链接控制和系统定义的 Shell 图标

If you are developing software for Windows 7 (and using .NET 3.5 SP1) then you can download and use the Windows API Code Pack which bring along a bunch of additional controls which may offer an alternative to the FolderBrowserDialog.

Here's what is included in the Windows API Code Pack

Windows 7 Taskbar

  • Jump Lists, Icon Overlay, Progress Bar, Tabbed Thumbnails, and Thumbnail Toolbars

Windows Shell

  • Windows 7 Libraries
  • Windows Shell Search API support
  • Explorer Browser Control
  • A hierarchy of Shell Namespace entities
  • Windows Shell property system
  • Drag and Drop for Shell Objects
  • Windows Vista and Windows 7 Common File Dialogs, including custom controls
  • Known Folders and non-file system containers

DirectX

  • Direct3D 11.0, Direct3D 10.1/10.0, DXGI 1.0/1.1, Direct2D 1.0, DirectWrite, Windows Imaging Component (WIC) APIs

Others

  • Windows Vista and Windows 7 Task Dialogs
  • Sensor Platform APIs
  • Extended Linguistic Services APIs
  • Power Management APIs
  • Application Restart and Recovery APIs
  • Network List Manager APIs
  • Command Link control and System defined Shell icons
眼前雾蒙蒙 2024-08-28 19:27:22

您无法更改对话框标题。如果您愿意,可以考虑使用 Shell MegaPack 中提供的商业FolderBrowserDialog 替换组件

You cannot change the dialog box title. If you want that, you can consider using the commercial FolderBrowserDialog replacement component available in Shell MegaPack

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文