【发布时间】:2010-10-20 18:07:54
【问题描述】:
我需要在禁用的组合框中使用黑色前景色。有可能吗?
【问题讨论】:
标签: c# .net winforms combobox colors
我需要在禁用的组合框中使用黑色前景色。有可能吗?
【问题讨论】:
标签: c# .net winforms combobox colors
我过去对文本框使用的“hack”是让控件保持启用状态,但捕获“OnFocus”事件并立即将焦点设置到表单上的其他对象,最好是标签,因为它没有t 显示为被选中。我认为这也适用于组合框。
【讨论】:
我过去搜索过有关这方面的信息,据我所知,最好的解决方案是将组合框的 DrawMode 更改为 OwnerDrawFixed 或 OwnerDrawVariable 然后在组合框的 DrawItem 事件中编写自己的绘图代码。
我发现了这个article,它更详细地介绍了它。希望对您有所帮助。
【讨论】:
comboBox1.BackColor=Color.Black;
【讨论】:
不确定您的应用是 Winforms 还是 WPF。下面给出的代码适用于 WPF 应用程序。
combo1.Items.Add("Item 1");
combo1.Items.Add("Item 2");
combo1.SelectedIndex = 0;
combo1.Foreground = Brushes.Black;
在我的 XAML 中,我添加了一个组合框并将其 IsEnabled 属性设置为“false”,然后在后面的代码中我使用了上面给出的代码并且它确实有效。
HTH
【讨论】:
你需要做的就是说
combobox1.ForeColor = Color.FromName("Black");
控件是否禁用无关紧要,它应该改变前景色。
【讨论】: