使 ToolBar 看起来像 Windows Vista/7 而不是经典

5 c# pinvoke toolbar winforms

我想让我的应用程序看起来更像是本机应用程序而不是 .NET 应用程序,并且我使用 .NET 是因为 Visual Designer 和 C#。

我见过一些使用与 Vista/7 菜单非常相似的工具栏的本机应用程序。

查看示例:

Windows Vista/7 风格

一些本机应用程序,如 Notepad++、Codeblocks 等,工具栏使用相同的 Vista/7 样式。我如何在 C# 中做同样的事情?我知道 P/Invoke,所以,我需要知道要使用的方法或示例。

我不使用ToolBarStrip,我使用ToolBar是因为本地人。我可以使用什么 P/Invoke 使工具栏看起来像上图(Vista/7 外观)?

编辑:基于这个问题,我需要在 P/Invoke 而不是 Win32 中做同样的事情。

Han*_*ant 3

Notepad++ 在其源代码中使用了本机工具栏控件的两个版本。我假设它会根据 Windows 版本在两者之间进行选择。您已经尝试过旧版(ToolBar 类)的 .NET 包装器,因此它可能不是您喜欢的。

另一种是较新的Rebar 控件,也称为“Coolbar”。请注意,其外观取决于 Windows 版本,因此请勿删除链接的 MSDN 文章中的(注明日期的)屏幕截图。没有官方的 .NET 包装器,但程序员已经编写了一些。有一个Codeproject.com 项目提出了一个建议,我通常不推荐任何此类项目,但听起来您很有能力消除错误。