एएसपी.नेट प्रीइनेट घटना में नियंत्रण कैसे प्राप्त करें? पॉइंटर्स शून्य हैं और FindControl विधि शून्य वापस आती है।एएसपी.नेट प्रीइनेट घटना में नियंत्रण कैसे प्राप्त करें?
मैं मास्टर और सामग्री पृष्ठों का उपयोग कर रहा हूं। सामग्री पृष्ठ की मार्कअप इस तरह दिखता है:
<asp:Content ID="Content2" ContentPlaceHolderID="ContentBody" runat="server">
<asp:Table ID="Table1" runat="server" Width="100%">
.....
</asp:Table>
</asp:Content>
इस तरह
और कोड:
private void Page_PreInit(object sender, EventArgs e)
{
Control table = this.FindControl("Table1");
//table is null here
}
तो तालिका अभी भी this.FindControl ("Table1") के बाद रिक्त है। पृष्ठ का नामकरण नियंत्रक भी शून्य है। मैं क्या गलत कर रहा हूं?
अद्यतन मुझे नियंत्रण बनाने के लिए इस ईवेंट का उपयोग करना होगा। जैसा कि ASP.NET Page Life Cycle Overview में कहा गया है, इस घटना का उपयोग गतिशील नियंत्रण निर्माण के लिए किया जाना चाहिए। मुझे अपनी तालिका में लिंक की एक सूची बनाने की जरूरत है। ऐसा करने का दूसरा तरीका हो सकता है?
मुझे यकीन नहीं है कि आप क्या गलत कर रहे हैं। क्या आपको प्रीइनिट इवेंट का उपयोग करना है? क्या आप इनिट जैसे बाद की घटना का उपयोग कर सकते हैं? –
मैथ्यू की तरह कहते हैं कि बाद की घटना आपको बेहतर तरीके से अनुकूल कर सकती है। मुझे संदेह है कि यह इस बात में है कि बहुत से नियंत्रण वास्तव में एक साथ रखे जाते हैं, इसलिए यदि आप जीवन चक्र में बहुत जल्दी चीजों तक पहुंचने का प्रयास करते हैं तो यह सब अलग हो जाता है। http://msdn.microsoft.com/en-us/library/ms178472.aspx उपयोगी हो सकता है यदि आप इसे पहले से ही देख चुके हैं। – Chris
अपना संपादन पढ़ने के बाद मैं आमतौर पर पेज_लोड ईवेंट में नियंत्रण पेड़ में सामान जोड़ता हूं। सुनिश्चित नहीं है कि आपने जो अनुभाग उद्धृत किया है वह ईमानदार होने का जिक्र कर रहा है लेकिन मुझे नहीं लगता कि इसका मतलब है कि किसी पृष्ठ पर एक लिंक जोड़ना ... – Chris