اذهب إلى المحتوى
  • 0

كيفية إيجاد Control داخل repeater ؟

عبدالعزيز برغش

السؤال

كيف أجد Control معين داخل repeater في c# حيث أنه لا يمكن ايجاده بهذا الكود

Panel offerHelp_panel = tasks_repeater.FindControl("offerHelpVisitor_panel") as Panel;

 

تم التعديل في بواسطة zezo mohamed
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

ستحتاج إلى وضع السمة OnItemDataBound="Fetcher" ضمن عنصر الـ repeater على الشكل التالي:

<asp:Repeater ID="tasks_repeater" runat="server" OnItemDataBound="Fetcher">
  <ItemTemplate>
     <asp:Panel ID="offerHelpVisitor_panel" runat="server"><asp:Panel>
  </ItemTemplate>
</asp:Repeater>

و Fetcher هنا هو اسم تابع يجب أن يكون موجودًا ضمن ملف الكود الخاص بالصفحة على الشكل التالي:

public void Fetcher(object sender, RepeaterItemEventArgs e)
{
    panels.Add((Panel)e.Item.FindControl("offerHelpVisitor_panel"));
}

أمّا بالنسبة للمتغيّر panels فهو من النوع List<Panel> حيث سيحتفظ بمرجع reference لكل عنصر Panel يتم توليده ضمن الـ repeater. عليك أن تصرّح عن هذا المتغيّر ضمن الصنف الخاص بالصفحة على الشكل التالي:

private List<Panel> panels = new List<Panel>();

عند تحميل الصفحة سيتم استدعاء التابع Fetcher عددًا من المرّات مساويًا لعدد عناصر الـ Panel التي سيولّدها الـ repeater وبالتالي يمكن أن تصل إليها جميعها عن طريق المتغير panels.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

تطبيق Web Forms
ال panel التي أريد أن أجدها باسم offerHelpVisitor_panel موجودة داخل ItemTemplate الموجود بالتالي داخل repeater باسم tasks_repeater
كود ال front-end كالتالي

<asp:Repeater ID="tasks_repeater" runat="server">
  <ItemTemplate>
     <asp:Panel ID="offerHelpVisitor_panel" runat="server"><asp:Panel>
  </ItemTemplate>
</asp:Repeater>

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

شكرا لحضرتك.
لكن هل يمكنك توضيح جزء الوصول إلى ال Panel عن طريق المتغير panels
أي نموذج لإستخدام offerHelpVisitor_panel بعد إيجادها في ال Page_Load مثلا

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...