PDA

View Full Version : سوال: Object reference not set to an instance of an object.



bahar_7
چهارشنبه 27 مرداد 1389, 23:39 عصر
دوستان سلام
این خطا ناشی از چیست؟
http://rapidshare.com/files/413736788/Edit.jpg

amirh_karimifar
چهارشنبه 27 مرداد 1389, 23:47 عصر
میشه اون قسمت از کدتون رو که این ایرائ هست رو بذارید .
این ارور دلایل زیادی داره . یکیش تخصیص ندادن حافظه به متغیر اشاره گره .
مثلا اگه شما دارید یک query می نویسید قبل از استفاده از selectcommand باید این کار رو انجام بدید .
dataadaptor.selectcommand = new command() ;

vandermond
چهارشنبه 27 مرداد 1389, 23:53 عصر
دوستان سلام
این خطا ناشی از چیست؟
http://rapidshare.com/files/413736788/Edit.jpg
دوست عزيز
عكس رو تو رپيدشر آپلود ميكني:متفکر:. بزار تو ضميمه هاي خودت يا برو تو سايتاي مخصوص كه راحت آپلود ميكنن و راحت هم دانلود بزار. مثل اين (http://www.333.ir//).
براي مشكل هم بايد بيشتر توضيح بدي (دوستمون هم گفت).

delasaee
چهارشنبه 27 مرداد 1389, 23:54 عصر
یکی از دلیلاش میتونه واسه اشتباه بودن کانکشنت باشه

amirh_karimifar
چهارشنبه 27 مرداد 1389, 23:56 عصر
این مشکل شما برا اون قسمت از کدت هست که نوشتی comyear.selectedindex.
اگر نکاه کنی الان یا combobox آیتم نداره یا آیتمی ازش انتخاب نشده . اگر تو همین الان نگاه کنی
مقدارش null خواهد بود.

amirh_karimifar
چهارشنبه 27 مرداد 1389, 23:58 عصر
برنامه رو خط به خط اجرا کن . مقداره selectedItem رو چک کن . ببینید کدومش null هست .

bahar_7
پنج شنبه 28 مرداد 1389, 00:27 صبح
میشه اون قسمت از کدتون رو که این ایرائ هست رو بذارید .
این ارور دلایل زیادی داره . یکیش تخصیص ندادن حافظه به متغیر اشاره گره .
مثلا اگه شما دارید یک query می نویسید قبل از استفاده از selectcommand باید این کار رو انجام بدید .
dataadaptor.selectcommand = new command() ;

این کد مربوط میشه به قسمت edite در فرم که وقتی edit می زنیم فرم دیگری باید یاز شود که شامل همان firdname ..... هست.


internal void EditForm(string id)
{
Master m = new Master();
ID_NUMBER = m.ID;
dbobject.connect();
dataadaptor.selectcommand = new command();

string Sql = " select ID from tbl_users "
+ " where first_name=" + txtName.Text.ToString() + " ,"
+ " last_name= " + txtFamily.Text.ToString() + " ,"
+ " student_number= " + txtStudentId.Text.ToString() + " ,"
+ " username= " + txtUser.Text.ToString() + " ,"
+ " password= " + txtPass1.Text.ToString() + ","
+ " Email_address= " + txtEmailAddress.Text.ToString() + ","
+ " univercity_id= " + this.cmbUni.SelectedValue.ToString() + ","
+ " course_id= " + this.cmbCourse.SelectedValue.ToString() + ", "
+ " province_id= " + this.cmbProvince.SelectedValue.ToString() + ","
+ " city_id= " + this.cmbCity.SelectedValue.ToString() + " ,"
+ " year= " + this.cmbYear.SelectedIndex.ToString() + " ";



Sql = id;
id = ID_NUMBER;


DataTable dt = dbobject.getDataTable(dbobject.Execute(Sql));

txtName.Text = dt.Rows[0]["name"].ToString();
txtFamily.Text = dt.Rows[0]["family"].ToString();
txtStudentId.Text = dt.Rows[0]["student_namber"].ToString();
cmbCourse.SelectedValue = dt.Rows[0]["course_id"].ToString();
cmbProvince.SelectedValue = dt.Rows[0]["province_id"].ToString();
cmbCity.SelectedValue = dt.Rows[0]["city_id"].ToString();
cmbUni.SelectedValue = dt.Rows[0]["univercity_id"].ToString();
cmbYear.SelectedIndex = Int32.Parse(dt.Rows[0]["year"].ToString());
txtEmailAddress.Text = dt.Rows[0]["Email_address"].ToString();

}

میلاد قاضی پور
پنج شنبه 28 مرداد 1389, 00:35 صبح
خانم از خاصیت تکس کومبو استفاده کنید . combo1.text

میلاد قاضی پور
پنج شنبه 28 مرداد 1389, 00:39 صبح
یا اینکه میتونید براش شرط بنویسید.این مثال رو ببینید :




if (myrow["nezamvazife"].ToString() == "کارت پایان خدمت")
comboBox3_army.SelectedItem = comboBox3_army.Items[0];
else if (myrow["nezamvazife"].ToString() == "مشمول")
comboBox3_army.SelectedItem = comboBox3_army.Items[1];
else if (myrow["nezamvazife"].ToString() == "معافیت دائم")
comboBox3_army.SelectedItem = comboBox3_army.Items[2];
else if (myrow["nezamvazife"].ToString() == "معافیت پزشکی")
comboBox3_army.SelectedItem = comboBox3_army.Items[3];
else if (myrow["nezamvazife"].ToString() == "سایر...")
comboBox3_army.SelectedItem = comboBox3_army.Items[4];

bahar_7
پنج شنبه 28 مرداد 1389, 15:09 عصر
این مشکل شما برا اون قسمت از کدت هست که نوشتی comyear.selectedindex.
اگر نکاه کنی الان یا combobox آیتم نداره یا آیتمی ازش انتخاب نشده . اگر تو همین الان نگاه کنی
مقدارش null خواهد بود.

لطفا یکم بیشتر توضیح بدید!
ممنون