我想更改主窗口标题栏的背景颜色
我尝试过创建自定义标题栏并附加事件以关闭,最大化和最小化,是否有其他方法可以更改/自定义主窗口标题栏?
答案 0 :(得分:4)
如果您使用的是.net 4.5,则可以使用WindowChrome。
上有一些帮助您可以通过设置Window.WindowStyle自定义窗口边框 属性或“无”或使用WindowChrome类。
WindowStyle.None 一种自定义WPF外观的方法 应用程序窗口是将Window.WindowStyle属性设置为None。 这样会从窗口中删除非客户端框架,仅保留 客户区域,您可以在其中应用自定义样式。但是,当 非客户端框架被删除,您还将丢失系统功能,并且 它提供的行为,例如字幕按钮和窗口 调整大小。另一个副作用是窗口将覆盖 Windows任务栏最大化时。设置WindowStyle.None启用 您创建一个完全自定义的应用程序,但还要求 您在应用程序中实现自定义逻辑以模拟标准 窗口行为。
WindowChrome 在保留标准窗口的同时自定义窗口 功能,则可以使用WindowChrome类。 WindowChrome 类将窗口框架的功能与 视觉效果,并让您控制客户端和 应用程序窗口的非客户区域。 WindowChrome类 通过扩展客户端,可以将WPF内容放入窗口框架中 区域覆盖非客户区域。同时保留系统 通过两个看不见的区域的行为;调整边框和标题的大小 区域。