2012-06-21 23 views
6

यदि मास्टर पेज में आईडी लेबल 1 वाला लेबल है, तो मैं सामग्री आईडी में उस आईडी को कैसे नियंत्रित करूं। आईडी को पारित नहीं किया गया है इसलिए मैं इसे मूल रूप से नियंत्रित नहीं कर सकता। ।सामग्री पृष्ठ में मास्टर पेज ऑब्जेक्ट की आईडी प्राप्त करें

: उदाहरण के लिए: मैं आईडी सामग्री लेबल के साथ एक नियंत्रण है अगर मैं यह सिर्फ सामग्री लेबल टाइप करके कोड का उपयोग कर सकते (जो भी मैं कर रहा हूँ)

+0

मैंने एक बक्षीस शुरू किया क्योंकि अगर वहां कोई बेहतर जवाब है तो मैं उत्सुक हूं। मेरे उत्तर के मुकाबले ज्यादा कदम उठाने की आवश्यकता है और यह कई सामग्री पृष्ठों में एक पिटा की तरह है। – canon

+0

@antisanity एक "पिटा" क्या है? – MikeTeeVee

+0

@ माइकटीवी दर्द में ... _butt_। ऐसा लगता है कि ** मास्टरपेज ** का चयन करना ** आपके लिए ** मास्टर टाइप ** सेट करना चाहिए। – canon

उत्तर

10

यहाँ दो विकल्प हैं सुनिश्चित करें कि आपके सामग्री aspx बनाने निर्दिष्ट करता है MasterType:

<%@ MasterType VirtualPath="~/yourMasterPageName.master" %> 

ऐसा अपनी सामग्री पेज क्या अपने गुरु-पेज से उम्मीद करने के लिए पता है की सुविधा देता है और आप IntelliSense देता है। तो, अब आप आगे बढ़ सकते हैं और लेबल की टेक्स्ट प्रॉपर्टी को मास्टर पेज के कोड-पीछे पर बेनकाब कर सकते हैं।

Master.ContentLabelText = "hah!"; 

या, :: तुम कितने तरह FindControl() के माध्यम से लेबल का उपयोग कर सकते हैं:

var contentLabel = Master.FindControl("contentLabel") as Label; 

public string ContentLabelText 
{ 
    get { return contentLabel.Text; } 
    set { contentLabel.Text = value; } 
} 

तो फिर तुम यह आपकी सामग्री पृष्ठ के कोड-पीछे पेज आला में उपयोग कर सकते हैं

+0

क्या कोई बेहतर अभ्यास है या क्या यह एकमात्र तरीका है? सिर्फ उत्सुक – auwall12688

+0

ऐसा नहीं है कि मुझे पता है ... इसलिए, मैं अन्य उत्तरों के लिए देख रहा हूं। – canon

+0

धन्यवाद, यह सही काम करता है। मैं .NET के लिए नया हूँ। थोड़ी देर के लिए प्रोग्राम किया गया, लेकिन .NET या वेब विकास में कभी नहीं। – auwall12688