如何解决WinForm中TableLayout控件闪烁的问题

public FormReg()
{
InitializeComponent(); typeof(TableLayoutPanel)
.GetProperty("DoubleBuffered",
System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)
.SetValue(tableLayoutPanel1, true, null); typeof(TableLayoutPanel)
.GetProperty("DoubleBuffered",
System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)
.SetValue(tableLayoutPanel2, true, null); }

利用反射机制,来设置TableLayout的DoubleBuffered属性。这个属性是Proctected访问级别的。

如果是动态加载元素 则可行的方式是:

            tableLayoutPanel1.SuspendLayout();
//--添加控件
tableLayoutPanel1.ResumeLayout();
上一篇:JQuery 在循环中设置事件,最后一个覆盖了前面所有的设置


下一篇:C#接口的使用【转】