c# – 更改.NET中DateTimePicker的背景颜色
发布时间:2020-12-15 06:34:34 所属栏目:百科 来源:网络整理
导读:在.NET中(至少在2008版本,也许在2005年版)中,更改DateTimePicker的BackColor属性对外观绝对没有影响.如何更改文本区域的背景颜色,而不是更改下拉式日历? 编辑:我在谈论Windows窗体,而不是ASP. 解决方法 根据 MSDN: Setting the BackColor has no effect o
在.NET中(至少在2008版本,也许在2005年版)中,更改DateTimePicker的BackColor属性对外观绝对没有影响.如何更改文本区域的背景颜色,而不是更改下拉式日历?
编辑:我在谈论Windows窗体,而不是ASP. 解决方法
根据
MSDN:
您需要编写一个扩展DateTimePicker的自定义控件.覆盖BackColor属性和WndProc方法. 每当您更改BackColor时,请勿忘记调用myDTPicker.Invalidate()方法.这将强制使用指定的新颜色重新绘制控件. const int WM_ERASEBKGND = 0x14; protected override void WndProc(ref System.Windows.Forms.Message m) { if(m.Msg == WM_ERASEBKGND) { using(var g = Graphics.FromHdc(m.WParam)) { using(var b = new SolidBrush(_backColor)) { g.FillRectangle(b,ClientRectangle); } } return; } base.WndProc(ref m); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |