PDA

View Full Version : سوال: اعمال یک خصوصیت بر روی تمام کنترلهای هم نوع



JustAcMilan
سه شنبه 20 فروردین 1392, 12:13 عصر
با سلام

دوستان چجوری میشه یک یا چند خصوصیت رو بر روی تمام کنترلهای هم نوع اعمال کرد
مثلا start position همه فرمها رو چه اونایی که وجود دارند چه اونایی که بعدا قرار ساخته بشن (منظورم همه فرمهاست) برابر با centerscreen قرار داد ، منظورم به صورت دستی و تک تک نیست بلکه بصورت یکجا برای همه فرمهاست (میشه تو program.cs نوشت؟)



سوال دومم اینه که اگه قرار باشه تو form load همه فرم ها یک کار مشترک انجام بشه (مثلا یک متد از یک کلاس فراخوانی بشه) ، میشه اون رو هم یک جا برا همه فرمها انجام داد؟

شما فکر کنید اگه 20 تا فرم داشته باشیم واقعا انجام دادن این کارها برای تک تکشون کار وقت گیر و خسته کننده ایه، تازه اگه بعدا فرمهای جدید اضافه بشه باز دوباره برا اونهاهم باید این کارا رو انجام داد

لطفا راهنمایم کنید؟

HellisH
سه شنبه 20 فروردین 1392, 12:29 عصر
شما باید یک کلاس به نام مثلا base form که از system.windows.form ارثبری میشه رو ایجاد کنید و در اون این خصوصیات رو پیاده سازی کنید و همینطور با استفاده از override میتونید event های مورد نظرتون رو پیاده سازی کنید
بعد از اون همه فرم هاتون رو به جای اینکه از system.windows.form ارثبری کنید از کلای خودتون یعنی baseform ارثبری کنید
با این عمل هر تغییری در baseform بدید در تمامی فرمهاتون اعمال میشه