Différence entre ISupportInitialize (BeginInit / EndInit) et SuspendLayout / ResumeLayout
-
22-08-2019 - |
Question
Quelqu'un pourrait-il expliquer s'il vous plaît ce que la différence entre l'utilisation des méthodes d'interface ISupportInitialize (BeginInit / EndInit) et en utilisant SuspendLayout / ResumeLayout?
est ISupportInitialize seulement utilisé lors de la construction / initialisation « initiale » ... ou peut-il être utilisé plus tard lorsque vous souhaitez ajouter de nouveaux contrôles enfants à un contrôle parent existant?
Les différences particulières?
Je vous remercie beaucoup de votre aide!
Merci,
Pato
La solution
L'interface ISupportInitialize vit dans le System.dll et est juste un concept assez générique dans le domaine des composants. Soit dit en passant, de nombreuses parties de System.Windows.Forms sont des composants, et aussi Windows.Forms est le principal utilisateur de l'étoffe ComponentModel.
Suspend / ResumeLayout est une pure chose Windows.Forms et dire vraiment un contrôle de ne pas essayer de faire du graphisme pendant que vous êtes par exemple l'ajout de contrôles de l'enfant ou modification des propriétés.
Autres conseils
bon code utilisé dans VB.Net pour cela, la plupart décompilateurs se tromper.
CType(Me.pictureBox1, System.ComponentModel.ISupportInitialize).BeginInit()