Esta es la contestación más correcta que encomtrarás dar, pero estúdiala pausadamente y analiza si se puede adaptar a tu proyecto.
Solución:
Suspenda el diseño hasta que haya agregado todos sus controles.
TableLayoutPanel panel = new TabelLayoutPanel();
panel.SuspendLayout();
// add controls
panel.ResumeLayout();
También mire el uso de Double Buffering. Tendrá que crear una subclase de TableLayoutPanel. Vea un ejemplo aquí.
Esto funcionó muy bien para mí Eliminar el parpadeo debido a TableLayoutPanel & Panel en forma de Windows
Aquí lo que hay en ese enlace (copiado textualmente)
Elimine completamente el parpadeo debido a TableLayoutPanel & Panel en el formulario de Windows de la siguiente manera: = – 1. Establezca la propiedad de doble búfer de Form =true. 2. Pegue las siguientes 2 funciones en form.cs
#region .. Double Buffered function .. public static void SetDoubleBuffered(System.Windows.Forms.Control c) if (System.Windows.Forms.SystemInformation.TerminalServerSession) return; System.Reflection.PropertyInfo aProp = typeof(System.Windows.Forms.Control).GetProperty("DoubleBuffered", System.Reflection.BindingFlags.NonPublic #endregion #region .. code for Flucuring .. protected override CreateParams CreateParams get = 0x02000000; return cp; #endregion
- Llamar
SetDoubleBuffered(“TableLaoutPannel_controlName”)
para cadaTableLayoutPannel
,Pannel
,Splitcontainer
,Datagridview
y todos los controles de contenedores.Gracias a RhishikeshLathe Publicado el 16 de febrero de 14 a las 20:11 p. m.
VB.net:
Protected Overrides ReadOnly Property CreateParams() As CreateParams
Get
Dim cp As CreateParams = MyBase.CreateParams
cp.ExStyle = cp.ExStyle Or &H2000000
Return cp
End Get
End Property
C#:
protected override CreateParams CreateParams
get
0x2000000;
return cp;
En VB, agréguelo al final de la clase afectada y le aseguro que funcionará.
En C#, agregue la propiedad a la parte superior de la clase junto con sus otras propiedades.
Básicamente, espera la representación completa de Winform y elimina el parpadeo del formulario que se está pintando en la pantalla. Si no lo has probado, no lo ignores. Tuve un gran problema con la latencia de Winform y esto lo solucionó.
Si tienes alguna desconfianza y disposición de ascender nuestro post puedes realizar un exégesis y con gusto lo interpretaremos.