我的表单上有一个简单的 Winforms 多行文本框。每当我调整文本框的大小或移动文本框时,它的内容就会开始疯狂地闪烁。这看起来非常恶心,甚至可能导致某些用户癫痫发作;-)
有没有办法操纵文本框的重绘过程来消除闪烁?
我找到了一个工作解决方案 https://social.msdn.microsoft.com/Forums/en-US/aaed00ce-4bc9-424e-8c05-c30213171c2c/flickerfree-painting在 MSDN 论坛上由汉斯·帕桑特 https://stackoverflow.com/users/17034/hans-passant。可以将以下代码添加到表单中,并且也适用于所有子控件:
protected override CreateParams CreateParams {
get {
const int WS_EX_COMPOSITED = 0x02000000;
CreateParams cp = base.CreateParams;
cp.ExStyle |= WS_EX_COMPOSITED;
return cp;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)