UseVisualStyleBackColor

UseVisualStyleBackColor

有没有一种方法可以更改按钮颜色并保留Windows VisualStyle?我想创建一个看起来像checkBox2的按钮(颜色和样式)

this.button2.BackColor = System.Drawing.SystemColors.GradientActiveCaption;
this.button2.UseVisualStyleBackColor = false;  //if true, BackColor gets ignored

最佳答案

不,不是。这种按钮背景由VisualStyleRenderer.DrawBackground()绘制。依次调用DrawThemeBackground()。这些方法不带颜色。因为主题中已经指定了颜色,所以不需要。

使用LinearGradientBrush模拟外观是您唯一的真实希望。请注意,自定义绘制按钮非常困难,所有代码都在内部,并且未提供所有者绘制。

考虑使用图像。

关于C#UseVisualStyleBackColor,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4492926/

10-13 05:34