PDA

View Full Version : عکس در دیتاگرید ویو



mehrdadkhorrami
دوشنبه 07 فروردین 1396, 19:55 عصر
با عرض سلام خدمت اساتید
من برنامه ای دارم که عکس محصولات را در دیتاگرید قرار داده ام
مشکل اینجاست زمانی که تعداد عکسها زیاد بشود برنامه هنگ میکند.
آیا میشود با تغییر ندادن کیفیت عکس مشکل را برطرف کرد؟

samiasoft
دوشنبه 07 فروردین 1396, 23:20 عصر
به احتمال زیاد شما اومدید عکس ها را داخل دیتابیس ذخیره و در دیتاگرید به نمایش درمی آورید...

یک توصیه...شما فقط مسیرعکس ها را داخل دیتابیستون ذخیره کنید.برای نمایش هم حتما باید در دیتاگرید قرار بدید ؟ اگه نه که میتونید یک پیکچر باکسی برای نمایش قرار بدید که با انتخاب رکورد موردنظر تصویر مربوطه لود شود.

mehrdadkhorrami
سه شنبه 08 فروردین 1396, 01:16 صبح
به احتمال زیاد شما اومدید عکس ها را داخل دیتابیس ذخیره و در دیتاگرید به نمایش درمی آورید...

یک توصیه...شما فقط مسیرعکس ها را داخل دیتابیستون ذخیره کنید.برای نمایش هم حتما باید در دیتاگرید قرار بدید ؟ اگه نه که میتونید یک پیکچر باکسی برای نمایش قرار بدید که با انتخاب رکورد موردنظر تصویر مربوطه لود شود.
ممنون بابت پاسختون. من فقط ادرس را ذخيره كردم. چون هركدام از عكسها ١٠ مگ هست دير لود ميكنه.
راه حلي كه گفتيد خوبه. بنظرتون بهتر نيست با پايين اوردن اسكرول عكسها لود بشه؟
ايا مطلبي در اين مورد سراغ داريد؟

hamidrezax1
سه شنبه 08 فروردین 1396, 14:26 عصر
پیشنهاد میکنم حجم عکس ها رو کم کنید و بعد بنظرم نیازی نیست همه دیتابیستون لود کنید.مثلا 100 تا 100 دیتا رو توی گرید فراخوانی کنید

mehrdadkhorrami
چهارشنبه 09 فروردین 1396, 13:01 عصر
من با اسکرول اینو تونستم بنویسم
گذاشتم شاید به درد کسی بخوره

Private Sub DataGridView1_Scroll(sender As Object, e As ScrollEventArgs) Handles DataGridView1.Scroll
On Error Resume Next
Dim a, b As Integer
a = DataGridView1.DisplayedRowCount(1)
b = DataGridView1.FirstDisplayedScrollingRowIndex


For i = b To a + b - 1
If DataGridView1.Rows.Item(i).Cells(5).Value <> "" Then
DataGridView1.Rows.Item(i).Cells(4).Value = Image.FromFile(DataGridView1.Rows.Item(i).Cells(5) .Value)
DataGridView1.Rows.Item(i).Cells(5).Value = ""
End If
Next

End Sub