خلق ديناميكي العديد من مثيلات ASP.NET USERCONTROLS: كيف يمكنني إنشائها ، وأين ستكون تعارضاتي؟

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

سؤال

لم أر هذا ينفذ من قبل في ASP.NET ، لكنني أفكر في واجهة المستخدم التي ستبدو وتصرف مثل هذا:

نظرة عامة مفاهيمية

  • يتم تحميل tabControl ويحتوي علامة التبويب الأولى على شبكة
  • عند النقر نقرًا مزدوجًا للنقر المزدوج على صف ، يتم إنشاء علامة تبويب جديدة مع تفاصيل السجل
  • يتم إنشاء محتوى علامة التبويب/السجل بواسطة UserControl
  • يمكن إنشاء العديد من علامات التبويب ، وبالتالي سيتم إنشاء العديد من حالات USERCONTROL

أعلم أن ASP.NET سوف يعيد تسمية بلدي (runat="server") معرف بالنسبة لي ، ويمكنني استخدام رمز من جانب خادم jQuery أو ASP.NET للعمل مع المعرف ... مخاوفي هي:

  • كيف يمكنني أن أطلب من ASP.NET إنشاء معرف فريد لكل مثيل ناتفي من USERCONTROL (ليتم تقديمه في عنصر نائب)
  • كيف أقوم بالفعل بإنشاء هذه الحالة الإضافية من عنصر التحكم؟
  • ماذا أحتاج أن أضعه في الاعتبار؟

بما أنني لا أريد نشرات Postback ، فأنا أفكر السيطرة على رد الاتصال, ، واستخدام ASP.NET USERCONTROLS لتحقيق هذا التأثير. سيسمح لي هذا بإجراء معظم الأشياء التي تتطلب Postback ، لكنها لن تقوم بتحديث جميع العناصر الموجودة على الصفحة ... فقط القسم الذي يحتوي على عنصر تحكم المستخدم. ومع ذلك ، أنا لست مرتبطًا بتنفيذ معين.

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

المحلول

يجب أن تنظر في طريقة page.loadControl. إنه يعمل بشكل جيد وبقدر ما أتذكر أنك وضعت أصحاب الجائزة على صفحتك وتحميل عناصر التحكم في العناصر النائبة ، وهكذا يمكنك التحكم في المعرفات.

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

قد يساعدك هذا في البدء:http://www.codeproject.com/kb/aspnet/loadingusercontrol.aspx

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