الفرق بين ISupportInitialize (BeginInit / EndInit) وSuspendLayout / ResumeLayout

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

سؤال

هل يمكن لشخص يرجى توضيح ما هو الفرق بين استخدام أساليب الواجهة ISupportInitialize (BeginInit / EndInit) واستخدام SuspendLayout / ResumeLayout؟

هل ISupportInitialize تستخدم فقط أثناء عملية البناء / التهيئة "الأولية" ... أو يمكن استخدامها في وقت لاحق عندما كنت ترغب في إضافة عناصر التحكم التابعة جديدة إلى عنصر تحكم الوالدين الحالية؟

وأي اختلافات معينة؟

وأنا أقدر كثيرا مساعدتكم!

وشكرا لك،

وباتو

هل كانت مفيدة؟

المحلول

واجهة ISupportInitialize يعيش في System.dll وهو مجرد مفهوم عام إلى حد ما في مجال المكونات. وبالمناسبة، أجزاء كثيرة من System.Windows.Forms هي مكونات، وWindows.Forms أيضا هو المستخدم الرئيسي من الاشياء ComponentModel.

وتعليق / ResumeLayout هو محض شيء Windows.Forms وقول الحقيقة التحكم ليست محاولة القيام الرسومات أثناء وجودك على سبيل المثال إضافة عناصر تحكم الطفل أو تغيير خصائص.

نصائح أخرى

والرموز المستخدمة في تصحيح VB.Net لهذا، فإن معظم decompilers الحصول على هذا الخطأ.

CType(Me.pictureBox1, System.ComponentModel.ISupportInitialize).BeginInit()
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top