Différence entre ISupportInitialize (BeginInit / EndInit) et SuspendLayout / ResumeLayout

StackOverflow https://stackoverflow.com/questions/877904

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

Était-ce utile?

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()
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top