在 Win7 主题下效果很好,但在 win classic 主题下看起来很奇怪。
在 Win 7 主题中:
在 Win 经典主题中:
有机会解决这个问题吗?
最佳答案
这是设计使然。它与“改变颜色”没有任何关系,它实际上是一种透明效果。窗口是矩形的,形状不适合标签。该控件首先通过要求父窗口绘制自身并传递其自己的窗口句柄来绘制选项卡的空间。然后在上面绘制标签。您可以通过设置父级的 BackgroundImage 属性来查看这一点。还有 Label 和 PictureBox 控件模拟透明度的方式。
这是由视觉样式渲染器实现的行为。 Windows Classic 不使用任何透明效果。
如果这对您来说真的很重要,那么请考虑使用 WPF。它的控件不使用窗口,因此不受所选主题的影响。
关于c# - 为什么在 Windows 经典主题中 TabControl 背景没有改变颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12244602/