PDA

View Full Version : سوال: Error تغییر مقدار دیتاگریدویو در زمان اجرا...



ro3vayedel
پنج شنبه 13 شهریور 1393, 15:05 عصر
با سلام ...
دوستان من 1 دیتاگرید ویو دارم بعنوان دیتاگریدویو خرید که سلول هاش شامل کد کالا و کد شخص(خریدار یا فروشنده) و ... است.
حالا میخوام زمان لود شدن فرم کد های داخل دیتاگرید رو به معادل نام آنها تبدیل کنم بعنوان مثال بجای نوشتن کد کالای 2 از tblKala نام معادلش رو خارج کنه و نمایش بده.
از کد زیر استفاده میکنم اما Error میده...
تصویر خطا رو هم ارسال کردم...


for(int i=0 ; i<dataGridViewKharid.RowCount ; i++) {
var SelectName = from c in db.TblKalas
where c.ID == Convert.ToInt32(dataGridViewKharid.Rows[i].Cells[1].Value)
select c;

label11.Text = SelectName.Single().Name.ToString();

dataGridViewKharid.Rows[i].Cells[1].Value = label11.Text;


}



123073
اگر دقت کنید نام پرتقال که معادل کدش هست رو توی ارور آورده اما توی دیتاگرید ویو نمیشینه...البته روی لیبل جواب میده...

aminmousavi
پنج شنبه 13 شهریور 1393, 16:02 عصر
سلام دوست عزیز .
مشکل از اینجاست که چون توی دیتابیس نوع فیلد شما int هست ، ستون و دیتاسورس شما هم دیتا تایپ اون فیلد شما int شده ، و نمیتونید مقدار string توی اون ستون بریزید.
پیشنهاد میکنم هنگام select زدن اون فیلد عددی خودتون رو کست کنین به رشته


SELECT CAST(MYDATE AS VARCHAR(8)) MYDATE FROM TABLE

Mahmoud.Afrad
پنج شنبه 13 شهریور 1393, 16:04 عصر
بدترین و اشتباه ترین کار ممکن رو دارید انجام میدید.
در مورد Join جستجو کنید. مثال زده شده.