PDA

View Full Version : سوال: مشکل با delegate برای ارسال مقدار بین دو فرم



desatir7316
پنج شنبه 18 اردیبهشت 1393, 21:55 عصر
سلام دوستان
من برای ارسال مقدار بین دو فرم از این کد ها استفاده کردم، ولی اررور میگیره، ممنون می شم راهنمایی کنید:
فرم اول که حاوی مقدار متغیره :

private string returnId()
{
int selectedrowindex = hefaDataGridView.SelectedCells[0].RowIndex;
DataGridViewRow selectedRow = hefaDataGridView.Rows[selectedrowindex];
string a = Convert.ToString(selectedRow.Cells[2].Value);
return a;
}


private void button2_Click(object sender, EventArgs e)
{


frmKholaseVaziat fr = new frmKholaseVaziat();
fr.ShowDialog();
fr.returnIdDelegate += new frmKholaseVaziat.returnId(returnId);}


فرم دوم که قراره مقداری رو از فرم اول بگیره:


public delegate string returnId();
public event returnId returnIdDelegate;


private void frmKholaseVaziat_Load(object sender, EventArgs e)
{
MessageBox.Show(returnIdDelegate());
}


اینم متن ارور :



Object reference not set to an instance of an object.

ارور رو هم از این خط کد گرفته:

MessageBox.Show(returnIdDelegate());

از این لینک (http://arnamenevis.org/forumdisplay.php?199-Yii-Framework)هم کمک گرفتم که اون کدهارو زدم

desatir7316
پنج شنبه 18 اردیبهشت 1393, 22:21 عصر
این روش جواب داد (http://stackoverflow.com/questions/2445436/global-variables-in-c-net)