PDA

View Full Version : سوال: علت این خطا در شرط



titipop1
یک شنبه 10 خرداد 1394, 18:04 عصر
سلام دوستان
این کدی که نوشتم میاد مقدار تکست باکس 2 رو پس از بررسی از فیلد یه تیبل کسر میکنه(بحث کسر از انبار)فقط تنها چیزی که هست این کدها تو فرم 2 هستش و اون گرید1 من تو فرم 1 هستش
(خاصیت modifire گرید 1 رو public کردم )همین کدها با این شرط تو فرم1 بدون خطا اجرا میشه و جواب میده ولی تو فرم2 این خطا رو میده
لطفا راهنمایی کنید

ebrahim.rayatparvar
یک شنبه 10 خرداد 1394, 19:28 عصر
سلام مهندس
یه راه حل دیگه هم داری البته اگه تو فرم 1 اجرا میشه و خطا نداری به جای اینکه این کار رو بکنی و تو فرم 2 از فرم1 یه شی جدید درست کنی بهتره که این کار رو بکنی.
تو فرم 2 یک سازنده داری به شکل زیر :


public Form2()
{
InitializeComponent();
}

حالا یه سازنده دیگه درست کن به شکل زیر :


private Form1 frmMain;
public Form2(Form1 f)
{
InitializeComponent();
frmMain = f;
}


حالا تو فرم1 زمانی که میخوای فرم2 رو بسازی به این شکل بساز :


new Form2(this).ShowDialog();


خوب دیگه حالا میتونی به گرید فرم2 به راحتی دستور بدی و هم زمان اطلاعات در گرید فرم1 برات ثبت بشه.
برای کار با فرم1 تو فرم2 حالا میتونی از متغیر frmMain استفاده کنی.

titipop1
یک شنبه 10 خرداد 1394, 20:42 عصر
سلام مهندس
یه راه حل دیگه هم داری البته اگه تو فرم 1 اجرا میشه و خطا نداری به جای اینکه این کار رو بکنی و تو فرم 2 از فرم1 یه شی جدید درست کنی بهتره که این کار رو بکنی.
تو فرم 2 یک سازنده داری به شکل زیر :


public Form2()
{
InitializeComponent();
}

حالا یه سازنده دیگه درست کن به شکل زیر :


private Form1 frmMain;
public Form2(Form1 f)
{
InitializeComponent();
frmMain = f;
}


حالا تو فرم1 زمانی که میخوای فرم2 رو بسازی به این شکل بساز :


new Form2(this).ShowDialog();


خوب دیگه حالا میتونی به گرید فرم2 به راحتی دستور بدی و هم زمان اطلاعات در گرید فرم1 برات ثبت بشه.
برای کار با فرم1 تو فرم2 حالا میتونی از متغیر frmMain استفاده کنی.

مهندس جان ایول واقعا باعث افتخارید خدا خیرت بده