PDA

View Full Version : سوال: آيا استفاده از فرمها بصورت استاتيك در برنامه مشكل دارد؟



reza_edu
جمعه 10 تیر 1390, 19:02 عصر
سلام به دوستان گرامي من در برنامه ام چون از كامپوننت استفاده ميكنم (حالا به هر دليلي) مجبورم از هركدام از فرم هاي فرزندم يك نمونه استاتيك داشته باشم ميخواستم بدونم كه اين كار مشكل خواصي از نظر حافظه نداره ؟ هر فرمي كه ساخته ميشه تا زمانيكه بسته نشه اجازه ساخت مجدد نداره . ممنون ميشم نظر شما دوست گرامي رو بشنوم . تعداد كل فرم ها 30 ميباشد.

Reza_Yarahmadi
جمعه 10 تیر 1390, 23:40 عصر
هر چیزی که استاتیک تعریف بشه (کلاس ، متد ، پراپرتی ، فیلد و ...) بعد از اولین ارجاع حافظه میگیره و تا زمانی که برنامه باز هست حافظه رو نگه میداره(در حالت معمولی). نمیدونم چرا فرمها رو استاتیک تعریف کردید ولی حدس میزنم با راه حلهای دیگه ای هم بشه بدون اسستاتیک کردن فرمها مشکل رو برطرف کرد.
در کل استفاده از فرمهای استاتیک (بدلیل اینکه ابزار روی فرم هم استاتیک میشن) روش خوبی نیست.

reza_edu
شنبه 11 تیر 1390, 09:06 صبح
سلام ممنون كه توجه كرديد مشكل اينكه وقتي فرم ها به فرم پدر اضافه ميشن هيچ جوري نميشه بدست آوردشون كدهاي زيادي تو سايت ها ي مختلف ديدم ولي هيچ كدوم جواب نداد ! من نياز به دسترسي به خاصيت زير براي هر فرم اضافه شده به فرم پدر رو دارم :
FormSetInputData.WindowState = FormWindowState.Normal;

Reza_Yarahmadi
شنبه 11 تیر 1390, 18:21 عصر
اگر فقط به این پراپرتی نیاز دارید میتونید به راحتی و با کد زیر این کار رو انجام بدید.
Application.OpenForms["YourFormName"].WindowState = FormWindowState.Normal;