3

我想找到一种方法将诸如控件之类的内容放入 WPF 窗口的非客户区,而无需触摸默认窗口控件按钮和窗口的任何其他属性。

尝试的解决方案:

我曾尝试使用 WindowChrome 对象来实现想要的结果,但它总是在标题栏的左右两侧留出 5px 的边距,因此窗口按钮会向内偏移,这使它看起来很丑陋、笨拙和非官方。

我试图覆盖 WndProc(我的意思是挂钩)以抵消这种不需要的效果 - 成功 - 但它会导致许多不需要的工件,例如,在某些情况下,标题栏会完全取消渲染;这些按钮仍然可以工作,但在拖动窗口之前它们将完全不可见。

我已经尝试过仅使用本机 Windows API 进行窗口管理和渲染的方法,但它们不会产生想要的结果,边距太厚,调整边框大小不一致以及其他问题。

结论:

我知道必须有一种相对简单且不笨拙的方法来执行此操作,因为文件资源管理器本身具有我要实现的功能。如果您查看左上角,则会有一个工具条,后跟您所在目录的名称,或者简称为“文件资源管理器”。

我如何实现这样的目标?我提前感谢大家的帮助。

4

0 回答 0