Kendo Ui Grid التسلسل الهرمي متعدد الطوابق (N- مستويات التسلسل الهرمي)

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

سؤال

أنا أستخدم شبكة Kendo UI ويعرض حاليا سجلات الأطفال الأصل الوالدين بشكل مناسب.ومع ذلك، فإنه اتضح أنني سأحتاج فعليا لعرض مستويات N مقابل الفردي الصارم.ليس كل سجل لديه أطفال، ولكن بعض سيكون لديهم مستويات متعددة.

رمز الشبكة الحالي:

giveacodicetagpre.

شبكة الطفل الحالية:

giveacodicetagpre.

بيانات المستوى الأعلى:

giveacodicetagpre.

نموذج بيانات المستوى الثاني:

giveacodicetagpre.

نموذج بيانات المستوى الثالث:

giveacodicetagpre.

ليس لدي أي مشكلة في التسلسل الهرمي للأطفال التقليدي والطفل، لكنني تكافح حتى كيف أذهب حول جعل قالب التفاصيل تتصرف بأطفالها.

أود أن يكون القالب مناسبا لعرض الطفل / الأحفاد - لا يوجد مؤشر هبوطي إذا لم يكن له أطفال إضافي.أفترض أنني أستطيع تقييم البيانات الموجودة في Databound، لكنني لا أرى كيفية القيام بذلك.

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

المحلول

استغرق الأمر بعض الوقت، لكنني عملت أخيرا إجابة مع بعض التوجيهات من اللمحات في Telerik. كنت فقط أصعب الوقت في الحصول على رأسي حول الحل.

- اقترح فلاديمير (في Telerik) أن أستخدم مكالمة AJAX مخصصة في دالة DetailInit باستخدام وظيفة حول النجاح لتحديد ما إذا كان لدي بيانات طفولة للنظر فيها. منذ أن كنت بحاجة إلى شبكة التفاصيل بغض النظر عن ما، انتقلت إلى فحص الطفل إلى وظيفة أخرى تنشئ شبكة التفاصيل. إذا وجدت بيانات الطفل، أضيف معلمة تفصيلية إلى الشبكة الجديدة. إن لم يكن، أنا ببساطة تجعل شبكة التفاصيل الجديدة.

وظيفة Ajax InitDetail:

giveacodicetagpre.

وظيفة لبناء شبكة التفاصيل الجديدة مع التحقق من الأطفال:

giveacodicetagpre.

للحصول على اكتمال، إليك الصفحة الكاملة والمثال من البيانات من مشروع العينة. إنه موقع على شبكة الإنترنت .NET MVC4، باستخدام خدمات ويب API للبيانات و Kendo UI للعميل.

هنا هو رمز الصفحة:

giveacodicetagpre.

البيانات هي في الواقع صغار في هذا التطبيق، لكنني ما زلت أعيده عبر ويب ويب. هنا عينة من أعلى مستوى البيانات:

giveacodicetagpre.

هنا هو بعض بيانات المستوى الثاني (بيانات الطفل):

giveacodicetagpre.

بعض بيانات المستوى الثالث (الأحفاد):

giveacodicetagpre.

وهلم جرا ...

يعمل بشكل صحيح لمدة 4 مستويات في الاختبارات الخاصة بي. هناك مشكلات تنسيق مع شبكات متعددة المتداخلة التي سأكون معالجتها.

نصائح أخرى

غير متأكد من أن هذا السؤال لا يزال مفتوحا، ولكن الحل البسيط هو استخدام العودية في وظيفة "DetailInit"، مثل أدناه:

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top