PDA

View Full Version : لود کردن تعداد زیاد رکورد در Datagridview



feri_sharp
پنج شنبه 26 تیر 1393, 09:12 صبح
سلام.
من یک برنامه نوشتم که حدود 10000 تا رکورد رو باید توی Datagridview نشون بده. بخشی که از پایگاه داده میخونه داده ها رو سریع اما اون بخشی که داده ها رو توی Datagridview لود میکنه، برنامه هنگ میکنه حتی با Thread.
من متوجه شدم که باید از Virtual mode توی Datagridview استفاده کنم، اما دقیقل روش استفادش رو متوجه نشدم. دوستان میتونن کمکم کنن؟

با سپاس.

hamid_hr
پنج شنبه 26 تیر 1393, 09:52 صبح
راه سریع اینه که
داده ها رو باید بریزی تو datatable یا dataview
بعد بنویسی

Dgv.DataSource = dt;

مهرداد صفا
پنج شنبه 26 تیر 1393, 12:21 عصر
سلام.
ده هزار رکورد خیلی نیست و باید در عرض چند ثانیه نمایش داده بشه.
خصوصیاتی که با گرافیک سر و کار دارند، به مقدار پیشفرض و ساده ترین شکل تغییر بدید و امتحان کنید.
برای مثال این دو خصوصیت رو به این شکل تغییر داده و تفاوت رو احساس کنید:


//DataGridView1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMo de.AllCells
DataGridView1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMo de.DisplayedCells;
' //DataGridView1.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode. AllCells
DataGridView1.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode. DisplayedCells;

feri_sharp
پنج شنبه 26 تیر 1393, 17:43 عصر
10000 رکورد همراه 50 ستون زیاد میشن.
مشکلم با این لینک حل شد. (http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.virtualmode(v=vs .110).aspx)