足利驾校网上约课,2012sbs歌谣大战exo,qq乐园
在使用 devexpress 开发 winform 程序时,我是使用的默认皮肤进行开发。但客户要求标题栏背景色改为蓝色,标题文字颜色改为白色。
改颜色比较简单,参考了 devexpress support 的说明,通过获取皮肤更改 backcolor
和 forecolor
就可以实现。不过更改之后,发现在低分屏下面,标题文字出现模糊的情况。
初步猜想应该是文字阴影的问题,但搜索了大部分资料没有找到解决方案,最后在 devexpress support 的这篇文章看到了自定义 formpainter
。起初我认为是重载 drawtext()
解决,不过没有找到相关的参数,之后发现它有一个 drawtextshadow()
方法,应该就是它了。
解决方法很简单,就是重写 drawtextshadow()
方法,将其作为一个空方法就行了,不做任何阴影处理。
public class replacefontformpainter : formpainter { public replacefontformpainter(control owner, iskinprovider provider) : base(owner, provider) { } // 不再绘制标题文字阴影。 protected override void drawtextshadow(graphicscache cache, appearanceobject appearance, rectangle bounds) { } }
来到你需要更改的窗体,重载窗体的 createformborderpainter()
方法,使用你自己创建的 formpainter
。
public partial class mainform : xtraform { protected override formpainter createformborderpainter() => new replacefontformpainter(this, lookandfeel); }
最后的效果:
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Net Core Web Api项目与在NginX下发布的方法
asp.net core3.1 引用的元包dll版本兼容性问题解决方案
IdentityServer4实现.Net Core API接口权限认证(快速入门)
ASP.NET Core MVC通过IViewLocationExpander扩展视图搜索路径的实现
网友评论