ورود

View Full Version : سرعت پایین datagrid در تعداد بالای داده



سیدسبحان
یک شنبه 20 دی 1394, 06:11 صبح
سلام. وقت بخیر
همه میدونیم که میشه itemssource دیتاگرید رو به دیتا بیس وصل کرد و تمام.
یعنی یه بار اطلاعات بانک رو بخونیم و به دیتا گرید متصلش کنیم.

ولی زمانی که اطلاعات زیاد باشه ، دیگه این کار منطقی ای نیست. چرا که برای load شدن دیتاگرید، باید زمان زیادی رو صبر کنیم.
خب حالا اگه برای یک فروشگاه که شاید 500 هزارتا کالا داشته باشه چی؟ خیلی زیاد میشه.

باید چکار کرد؟

Mani_rf
چهارشنبه 07 بهمن 1394, 09:01 صبح
فکر میکنم قبلا شما این سوال رو پرسیده بودید منم هم دقیقا همین جواب رو بهتون داده بودم! البته شاید شما نبودید!
در هر صورت لود کردن 500 هزار رکورد توی گرید یعنی مصرف منابع سخت افزاری بسیار بالا که در هر صورت باعث کند شدن برنامه میشه. این رو درنظر بگیرید که اطلاعات توی گرید لود میشه تا کاربر بتونه اونها رو ببینه و بررسی کنه و ... ؛ و کاربر هرگز نمیتونه 500هزار رکورد رو ببینه و... بهترین کار اینه که تعداد رکورد های لود شده رو محدود کنید، فیلتر کنید یا با شرایط خاص همیشه همه رو نشون ندید.

سیدسبحان
چهارشنبه 07 بهمن 1394, 09:35 صبح
بله تشکر
نه من نبودم مهندس:متعجب:

نمیشه برنامه رو جوری تعیین کنیم که وقتی اسکرول دیتاگرید رو داره حرکت میده ، به تناسب رکورد های بیشتری لود بشه؟

Mani_rf
چهارشنبه 07 بهمن 1394, 11:05 صبح
بله تشکر
نه من نبودم مهندس:متعجب:

نمیشه برنامه رو جوری تعیین کنیم که وقتی اسکرول دیتاگرید رو داره حرکت میده ، به تناسب رکورد های بیشتری لود بشه؟

چرا میشه. هر کامپوننتی که اسکرول داره حتما یک فضای نام به اسم اسکرول داره که توی اون ScrollVerticalOffset وجود داره. این پروپرتی یک عدد Double بین 0 تا 1 رو نشون میده که نشون دهده محل قرار گیری اسکرول و شما میتونید وقتی که عدد به 1 نزدیک شد برید بقیه رکورد ها رو لود کنید.