• 0

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

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

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

 

تمّ تعديل بواسطة zezo mohamed

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 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

هل من الممكن أن تحدد نوع التطبيق الذي تعمل عليه، وأي معلومات إضافية من فضلك.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 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 مثلا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن