2010-12-17 10 views
6

के पीछे कोड में पहचाना नहीं जा रहा है मेरे पास एक नेस्टेड रिपेटर सेट अप है लेकिन बच्चे के पुनरावर्तक नियंत्रण को पीछे कोड में पहचाना नहीं जा रहा है। इसे डिजाइनर फ़ाइल में भी जोड़ा नहीं जा रहा है। मैंने इसे एएसपीएक्स और एएक्सएक्स पेज पर आजमाया है लेकिन दोनों एक ही समस्या देते हैं।नेस्टेड रिपेटर को

<asp:Repeater ID="RepeaterParent" runat="server"> 
    <ItemTemplate> 

     <asp:Repeater ID="RepeaterChild" runat="server"> 
     </asp:Repeater> 

    </ItemTemplate> 
</asp:Repeater> 

पृष्ठ पर इस पृष्ठ के साथ कोड केवल दोहराना माता-पिता को पहचानता है लेकिन रिपेटर चाइल्ड नहीं।

क्या कोई मेरी मदद कर सकता है? बहुत धन्यवाद!

उत्तर

10

पुनरावर्तक (या टेम्पलेट) नियंत्रण में उपयोग किए जाने वाले किसी अन्य नियंत्रण की तरह, आपको FindControl का उपयोग करके नियंत्रण पुनर्प्राप्त करने की आवश्यकता है।

तो, माता-पिता के लिए अपने मद डेटा बाँध ईवेंट हैंडलर में, आप क्या करेंगे:

var childRepeater = RepeaterParent.FindControl("RepeaterChild") as Repeater; 
+0

+1 1 9 सेकंड तेज :) –

4

RepeaterChild जब आप माता-पिता पुनरावर्तक मुझे लगता है कि पर FindControl("RepeaterChild") का उपयोग पहुंचा जा सकेगा। सटीक वाक्यविन्यास याद नहीं कर सकते हैं।

यह भी ध्यान रखें कि FindControl विधि पेरेंट पुनरावर्तक के वर्तमान आइटम का संदर्भ भी लेगी, क्योंकि आपके द्वारा निर्दिष्ट नाम दोहराया जाएगा। अद्वितीय नामकरण प्रदान करने के लिए नामकरण कंटेनर पृष्ठभूमि में कुछ काम करते हैं, लेकिन कभी-कभी ट्रैक करना मुश्किल होता है।

संबंधित मुद्दे