【发布时间】:2018-10-16 18:30:54
【问题描述】:
我只是在搞乱 .NET 使用 Winforms 提供的视觉样式,我遇到了问题。我只是执行这段代码,从自定义面板的 OnPaint 方法调用,没什么特别的。
private void DrawBox(PaintEventArgs e)
{
ComboBoxRenderer.DrawDropDownButton(e.Graphics, e.ClipRectangle, ComboBoxState.Normal);}
我的问题是按钮的背景颜色是灰色,而真正的 ComboBox 的背景颜色是白色(无论如何在我的计算机上)。
这里有两个问题,为什么颜色会改变,以及如何使用与真正的 ComboBox 相同的背景颜色来渲染按钮?
谢谢 丹尼
【问题讨论】:
-
您是否还在搞乱启用/禁用
VisualStyles设置和SetWindowTheme()和Co.? -
组合框样式受 DropdownStyle 属性的影响很大,比较 DropDown 和 DropDownList。考虑到 DropDownList 是“真正的”样式,您不喜欢 ComboBoxRender。 Lars 解决了您的问题,请关闭您的问题。