在我的应用程序中,我添加了组合框,如下图所示
我已将组合框属性设置为
cmbDatefilter.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
现在我的问题是如何将边框样式设置为组合框,这样看起来会很漂亮。
我在下面的链接中验证
Flat style Combo box
我的问题与下面链接的不同。
Generic ComboBox in Windows Forms Application
How to override UserControl class to draw a custom border?
3条答案
按热度按时间xurqigkl1#
您可以从
ComboBox
继承并覆盖WndProc
,处理WM_PAINT
消息并为组合框绘制边框:BorderColor
属性或者使用另一种颜色。DrawLine
方法。RightToLeft
时,需要从(0, buttonWidth)
到(Height, buttonWidth)
画线ComboBox.FlatComboAdapter
类的源代码。您可能还喜欢Flat ComboBox:
第一节第一节第一节第二节第一节
rt4zxlrg2#
CodingGorilla有正确的答案,从ComboBox中派生出自己的控件,然后自己绘制边框。
下面是一个绘制1像素宽的深灰色边框的工作示例:
左边是正常的,右边是我的例子。
ergxz8rk3#
另一种方法是在Parent控件的Paint Event中自己绘制边框: