我在具有表单的Windows应用程序中工作 . 此表单包含一个具有一些复选框的组框 . 我已将此组框设置为禁用 . 现在我的问题是复选框文本的前色 . 它变成浅灰色,如下图所示 .
如何更改复选框文本的前景颜色,使其看起来不像禁用(浅灰色) .
不要禁用它,只需将AutoCheck属性设置为False即可
你已经拥有所有者绘制的 CheckBox (或者它是某人的一个组成部分),所以解决方案是用所需颜色绘制文本,忽略 Enabled 值,是正确的 .
CheckBox
Enabled
其他可能性是不要禁用 CheckBox es的父容器,那么有很多可能性:
不要禁用 GroupBox (这是出于某种原因,用户习惯使用它);
GroupBox
阻止 CheckBox 以某种方式被点击(虽然这不是要求):通过将 AutoCheck 设置为false,将 Checked 值恢复为 OnCheckedChanged ;
AutoCheck
Checked
OnCheckedChanged
不要在禁用内部托管控件 GroupBox (闻起来hacky ^^):
使用浮动面板, GroupBox 不在父级之内;
不要使用 GroupBox
使用自定义 GroupBox
2 回答
不要禁用它,只需将AutoCheck属性设置为False即可
你已经拥有所有者绘制的
CheckBox
(或者它是某人的一个组成部分),所以解决方案是用所需颜色绘制文本,忽略Enabled
值,是正确的 .其他可能性是不要禁用
CheckBox
es的父容器,那么有很多可能性:不要禁用
GroupBox
(这是出于某种原因,用户习惯使用它);阻止
CheckBox
以某种方式被点击(虽然这不是要求):通过将AutoCheck
设置为false,将Checked
值恢复为OnCheckedChanged
;不要在禁用内部托管控件
GroupBox
(闻起来hacky ^^):使用浮动面板,
GroupBox
不在父级之内;不要使用
GroupBox
使用自定义
GroupBox