问题描述
请教高人:在Form上安放多个Text,以下情况时Form都要自动刷新,导致视觉上有刷屏的感觉:(1)载入窗体,显示窗体时;(2)当其中每个Text数据变更时。特别是在第2种情况下,有办法不让窗体在每一次数据变化时刷新吗?而是全体Text集体变化一次后,统一刷新?或者,隔一段时间刷新一次?频繁刷新的结果,会导致程序运行缓慢,狂晕!~0`
解决方案
解决方案二:
你可以参考一下Form.SuspendLayout:控件的布局逻辑被挂起,直到调用ResumeLayout方法为止。当调整控件的多个属性时,将先后使用SuspendLayout和ResumeLayout方法取消多个Layout事件。例如,通常先调用SuspendLayout方法,然后设置控件的Size、Location、Anchor或Dock属性,最后调用ResumeLayout方法以使更改生效。要成功调用ResumeLayout,一定不能有挂起的对SuspendLayout的调用。注意:将多个控件添加到父控件时,建议在初始化要添加的控件之前调用SuspendLayout方法。将控件添加到父控件之后,调用ResumeLayout方法。这样就可以提高带有许多控件的应用程序的性能。再参考一下Form.Enable通过Enabled属性,可以在运行时启用或禁用控件。例如,可以禁用对应用程序的当前状态不适用的那些控件。还可以禁用一个控件,以限制其使用。例如,可以禁用一个按钮,以防止用户单击它。如果控件被禁用,就无法选中它。重要说明:将Enabled属性设置为false不会禁用应用程序的控件框或禁止应用程序窗口接收焦点。当将一个容器控件的启用属性设置为false时,其包含的所有控件也都被禁用。例如,如果用户单击被禁用的GroupBox控件包含的任何控件,不会引发任何事件。如:Form.Enable=False'这里置txtBox值Form.Enable=True
解决方案三:
切,是Enabled
解决方案四:
试试双缓冲。虽说图片里面经常用到,但也可以在Form里面试试。
解决方案五:
Enabled会让窗体灰化?然后Enabled=True再将设置后的Textbox显示出来,对吗?整个设置过程,窗体有颜色变化?
解决方案六:
Form双缓冲,如何做到?可否贴出代码看看?
解决方案七:
me.suspendlayout()
解决方案八:
引用2楼lzmtw的回复:
切,是Enabled