نقل قول: مشکل درنمایش فرم
یه فیلد(منطقی) static برای فرم 2 تعریف کن و موقع نمایش اگر اون فیلد False بود : اول فیلد رو True کن و سپس فرم رو نمایش بده
و موقعی هم که فرم 2 بسته شد دوباره فیلد رو False کن ...
نقل قول: مشکل درنمایش فرم
وقتي ميخواي فرم 2 را باز كني اونو showdialog كن تا كاربر به فرم 1 دسترسي نداشته باشه تا هي روي دكمه كليك كنه و فرم باز كنه
نقل قول: مشکل درنمایش فرم
نه چون از خاصیت mdi استفاده کردم نمیتونم show dialog کنم . فکر کنم بهتر باشه از متغیر منطقی استفاده کنم
نقل قول: مشکل درنمایش فرم
چند روش واسه این کار هست
یکی توسط Generic Singleton
public class SingletonProvider<T> where T : new()
{
SingletonProvider() { }
public static T Instance
{
get
{
return SingletonCreator.Instance;
}
}
class SingletonCreator
{
static SingletonCreator(){}
private static T instance;
public static T Instance
{
get
{
System.Windows.Forms.Form frm = instance as System.Windows.Forms.Form;
if (instance == null || frm.IsDisposed==true)
instance = new T();
return instance;
}
}
}
}
طرز استفاده اش هم بصورت :
Form2 f2 = SingletonProvider<Form2>.Instance;
f2.Show();
یه روش دیگه استفاده از Application :
Form f2;
if (Application.OpenForms["Form2"] != null)
f2 = Application.OpenForms["Form2"];
else
f2 = new Form2();
f2.Show();
بازم هست ولی فکر کنم همینا کارتو راه بندازه!! :چشمک:
نقل قول: مشکل درنمایش فرم
نقل قول:
نوشته شده توسط
hozouri
یه فیلد(منطقی) static برای فرم 2 تعریف کن و موقع نمایش اگر اون فیلد False بود : اول فیلد رو True کن و سپس فرم رو نمایش بده
و موقعی هم که فرم 2 بسته شد دوباره فیلد رو False کن ...
روش کاملا غلطی است!
روش صحیح استفاده از الگوی سینگلتون می باشد.