PDA

View Full Version : برگشت ندادن ایدی از دیتا گرید ویو



boysilent
پنج شنبه 04 خرداد 1391, 20:03 عصر
سلام دوستان من برای اینکه یه ستون از دیتاگرید رو ویرایش کردم
و توی قسمت click
cell
این کد رو نوشتم

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
int primaryKey;
primaryKey = Convert.ToInt32(dataGridView1.CurrentRow.Cells["id"].Value);
label2.Text = primaryKey.ToString();
}


حالا خطا میده که ایدی رو نمیتونه پیدا کنه یه همچین چیزی
؟؟؟
Column named id cannot be found.
Parameter name: columnName

magic69
پنج شنبه 04 خرداد 1391, 20:22 عصر
شما ستون id رو واسه دیتاگرید ویو ایجاد کردین؟؟

omran.av
پنج شنبه 04 خرداد 1391, 20:30 عصر
سلام
مشکل کد شما مربوط به انتخاب اسم ستون تو دیتاگرید میشه به احتمال زیاد id مربوط به header text ستون میباشد نه اسم ستون.پیشنهاد میکنم از کد زیر استفاده کنید.
در ضمن برای بدست اوردن اسم ستون روی دیتاگرید راست کلیک کنید و Edit Column رو انتخاب کنید بعد از لیست Column ها ستون مورد نظر را انتخاب کنید . اسم ستون تو قسمت سمت راست جلوی (Name) نوشته شده.
از این کد استفاده کنید:
int primaryKey;
primaryKey = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[شماره ستون].Value);
label1.Text = primaryKey.ToString();

boysilent
پنج شنبه 04 خرداد 1391, 20:35 عصر
اینو امتحان کردم این خطارو میده
اسم ستون درساه بابا همون ایدیههه
Input string was not in a correct format.

boysilent
پنج شنبه 04 خرداد 1391, 21:04 عصر
بصورت insert

اون از قبل پز شدههههه
بحث اینه چرا خطا میده

boysilent
پنج شنبه 04 خرداد 1391, 21:19 عصر
ای باباا پس من چسکار کردم از اندیس استفاده کردم دیگهه

boysilent
پنج شنبه 04 خرداد 1391, 21:38 عصر
بچه ها کسی راهی سراغ نداره؟؟؟؟؟بغیر این راه

omran.av
پنج شنبه 04 خرداد 1391, 21:52 عصر
این کد رو ببین شاید مشکلت حل شد.

boysilent
جمعه 05 خرداد 1391, 07:29 صبح
نه متاسفانه کارایی نداشت
ببینید من میخخوام روی یک رکورد که کلیک شد براه صفحه بعد برای اپدیت؟

omran.av
جمعه 05 خرداد 1391, 10:31 صبح
یعنی شما می خواین وقتی روی یک رکورد کلیک می کنید اون رکورد تو یه فرم دیگه بار بشه؟
اگه منظورتون همینه می تونید توی فرم آپدیتتون یه متغییر پابلیک تعریف کنید بعد با روشی که من بهتون گفتم محتویات سلول کلید جدول رو به اون متغییر پابلیک نسبت بدین و در آخر هم فرم آپدیت رو شو کنید.
اگه هم می خواید به کنترل های روی فرم آپدیت مثل textbox ها دسترسی داشته باشد باید ابتدا خاصیت Modifiers اونها رو پابلیک کنید بعد اونها رو از فرم 1 مقداردهی کنید.
البته دستورات مربوط به آپدیت جدول رو باید تو فرم آپدیتتون بنویسید.

boysilent
جمعه 05 خرداد 1391, 18:23 عصر
یعنی کسی نتونست مشکل منو جواب بده داداشا این خطا واسه چیه ؟چرا نمیشناسه؟؟

Mahmoud Zaad
جمعه 05 خرداد 1391, 18:28 عصر
یعنی کسی نتونست مشکل منو جواب بده داداشا این خطا واسه چیه ؟چرا نمیشناسه؟؟
سلام
دوست عزیز، اینجوری فایده نداره کدهایی که نوشتید (به صورت کامل) یا این قسمت از پروژه رو آپلود کنید.

boysilent
جمعه 05 خرداد 1391, 18:34 عصر
حل شد ممنون