كيف يمكنك إدارة Infragistics البيانات WebGrid من شفرة جافا سكريبت / أجاكس؟

StackOverflow https://stackoverflow.com/questions/232020

سؤال

وأنا أعمل على مشروع أنني بحاجة إلى استخدام عنصر تحكم Infragistics WebGrid لبعض القوائم من البيانات. أنا تحميل البيانات على العميل باستخدام جافا سكريبت للعرض على الخريطة، وبعد ذلك تحتاج إلى عرض تلك البيانات نفسها ضمن WebGrids متعددة. سوف يتم عرض كافة البيانات المتاحة في WebGrids، ولكن فقط مجموعة فرعية من البيانات التي سيتم تآمر (وهذا فقط الذي هو حاليا في رأي) على الخريطة في أي وقت من الأوقات. وبما أنني تحميل البيانات باستخدام جافا سكريبت / اياكس، وأود أن تحميله مرة واحدة فقط، واستخدام نفس الآلية لتجميع تحكم WebGrid مع البيانات أيضا.

هل هناك أي نصائح / مؤشرات على العمل مع WebGrid تماما من داخل العميل شفرة جافا سكريبت / أياكس؟

هل كانت مفيدة؟

المحلول

والفكر الوحيد الذي يتبادر إلى الذهن هو المتصلة بالأداء. لقد وجدنا كان أن خلق ديناميكية وملء الصفوف لUltraWebGrid أبطأ بشكل ملحوظ مما كنا نود. (في حالتنا نحن كانت تتحرك الصفوف من شبكة إلى أخرى، ومشكلات في الأداء ضرب عندما كان عدد الصفوف كبيرة جدا).

إذا كنت تفعل شيئا مثل تصفون اليوم، وأود أن ملء الشبكة من جانب الملقم إذا كان ذلك ممكنا، وعرض القيم ذات الصلة على خريطة من هناك.

وباعتبارها العقد أضاف، كنا Infragistics 2007.1. أنا لا أعرف إذا كان 2008.x هو أفضل في هذا المجال.

نصائح أخرى

ووInfragistics webgrids كشف طراز كائن العميل معقدة جدا التي سوف تكون قادرة على استخدامها لملء جانب العميل البيانات الخاصة بك.

وأول شيء كنت تريد القيام به هو الحصول على نظرة على CSOM الكامل للتحكم webgrid، يمكنك العثور على نسخة وثيقة الحالي على العنوان التالي: <لأ href = "http://help.infragistics.com/NetAdvantage/ NET / 2008،3 / CLR2.0 / "يختلط =" نوفولو noreferrer "> http://help.infragistics.com/NetAdvantage/NET/2008.3/CLR2.0/

لجعل مثالا القصير، وسوف تحتاج إلى الاستيلاء على refence إلى الشبكة الخاص بك (ق) ثم قم بإضافة بعض الصفوف والبيانات. ربما يكون من الأسهل لإعداد التعاريف العمود الشبكات الخاصة بك في وقت التصميم، بدلا من محاولة أن تفعل كل شيء في جافا سكريبت.

أولا: الحصول على رقم المنشأ إلى الشبكة الخاصة بك:

var grid = igtbl_getGridById('dataGridControlID');

وثم إضافة صف جديد:

var newRow = grid.Rows.addNew()

وبعد أن يكون عمله يمكنك حلقة الأعمدة الصف لملء البيانات:

var oCols = newRow.Band.Columns;
for(var i=0; i < oCols.length; i++) {
    newRow.getCell[i].setValue(yourValue)
}

وأو معالجة كل واحد بواسطة مفتاح لتجميع البيانات الخاصة به:

newRow.getCellFromKey(colKey).setValue(yourValue,fireEvents);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top