PDA

View Full Version : جایگزینی یک مقدار عددی با یک عکس در DataGridView



newgoldenman
جمعه 02 اسفند 1387, 19:51 عصر
سلام به همه ی دوستان عزیز
یه سوالی دارم که نمونه های مشابهش هست توی سایت و دیدم اونها رو . ولی هیچ کدوم رو نتونستم به عنوان پاسخ این سوالم بپذیرم! چرا که توی جستجوهایی که کردم من، میشه یدونه Column جدید اضافه کرد، نه جایگزین! (البته امیدوارم جز این راه، راه دیگه ای هم باشه)
راستش سوال من خیلی ساده هست برای شما که تجربه اش کردین و بلد هستین این کار رو البته!

سوال:
یک دیتابیس داریم که توی یکی از ستونهای اون، مقادیری داریم از نوع Boolian . این دیتابیس رو با استفاده از Dataset میریزیم توی DataGridView !
حالا میخوام پس از اینکه پر شد سلول های DataGridView (یا شاید هم در حین پر کردن) توی همون ستونی که گفتم داریم، به جای همه ی مقادیر True ، مثلاً یدونه عکس "تیک" نشون داده بشه، و به جای همه ی مقادیر False ، مثلاً یدونه عکس "ضربدر" !

(و در کل این کار رو میخوام انجام بدم که:
بتونم توی یک سلول خاص مثل (10,12) به جای مقداری که الان هست، یدونه عکس یا آیکون قرار بدم)

پیشاپیش ممنونم از پاسختون

Mbt925
شنبه 03 اسفند 1387, 00:24 صبح
تکراری....

Mbt925
شنبه 03 اسفند 1387, 00:25 صبح
به نمونه براتون نوشتم که دو تا آیکون رو نشون میده.


http://mbt925.googlepages.com/DataGridViewImageCellScrShot.png


اگه فهمش مشکله، بگید تا کمی بازش کنم.

یک کنترل DataGridView برروی فرمتون قرار بدید و
سورس زیر رو در رویداد Load فرم قرار بدید:

در ضمن بجای دو مسیر آیکونی که استفاده شده، از مسیرهای درست استفاده کنید.



DataTable dt = new DataTable();

DataColumn dc1 = new DataColumn("column1");
DataColumn dc3 = new DataColumn("column3");

dt.Columns.Add(dc1);
dt.Columns.Add(dc3);

DataRow dr = dt.NewRow();
dr[0] = "mbt925";
dr[1] = "mbt925";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr[0] = "mbt925";
dr[1] = "mbt925";
dt.Rows.Add(dr);

dataGridView1.DataSource = dt;

DataGridViewImageColumn dc2 = new DataGridViewImageColumn();
dc2.Image = Bitmap.FromFile(@"F:\Icons\55Icon\0002.ico");
dataGridView1.Columns.Add(dc2);

DataGridViewImageCell dgvic = (DataGridViewImageCell)dataGridView1[2, 2];
dgvic.Value = Bitmap.FromFile(@"F:\Icons\55Icon\0023.ico");

newgoldenman
شنبه 03 اسفند 1387, 01:02 صبح
.ممنونم از پاسختون دوست عزیز.تیپ سوال تکراریه، خودمم گفتم ولی ولی این جواب هم مثل بقیه ی جواب های دیگه هست که گفتم.
من دقیقاً میخوام این کار رو برام انجام بده:
http://msdn.microsoft.com/en-us/library/z1cc356h.aspx
ولی این مثال رو تست کردم، به جای نشون دادن خود عکس، توی سلول مربوطه مینویسه:
System.Drawing.Bitmap

danial82
شنبه 03 اسفند 1387, 06:29 صبح
.ممنونم از پاسختون دوست عزیز.تیپ سوال تکراریه، خودمم گفتم ولی ولی این جواب هم مثل بقیه ی جواب های دیگه هست که گفتم.
من دقیقاً میخوام این کار رو برام انجام بده:
http://msdn.microsoft.com/en-us/library/z1cc356h.aspx
ولی این مثال رو تست کردم، به جای نشون دادن خود عکس، توی سلول مربوطه مینویسه:
System.Drawing.Bitmap

سلام برنامه ای که تو لینکت داده بودی درست بود و عکسا رو نشون میداد

Mbt925
شنبه 03 اسفند 1387, 15:38 عصر
.ممنونم از پاسختون دوست عزیز.تیپ سوال تکراریه، خودمم گفتم ولی ولی این جواب هم مثل بقیه ی جواب های دیگه هست که گفتم.
من دقیقاً میخوام این کار رو برام انجام بده:
http://msdn.microsoft.com/en-us/library/z1cc356h.aspx
ولی این مثال رو تست کردم، به جای نشون دادن خود عکس، توی سلول مربوطه مینویسه:
System.Drawing.Bitmap

مثال مربوطه کاملا درسته و کار می کنه.

شما حتی با استفاده از مثال من هم می تونید مشکلتون رو حل کنید!!!!