मेरे पास एक एएसपी में ग्रिड व्यू है।नेट एप्लिकेशन, जहां एक टेम्पलेट फ़ील्ड का हेडर टेक्स्ट फ़ील्ड के शीर्षलेख टेम्पलेट में सेट किया गया है, एक लेबल के रूप में (जहां यह संसाधन फ़ाइल से आएगा)। नीचे कोड है
<asp:GridView ID="gridView" ClientIDMode="Static" runat="server" AutoGenerateColumns="False" meta:resourcekey="grdViewResource">
<Columns>
<asp:TemplateField meta:resourcekey="TemplateFieldResource1">
<HeaderTemplate>
<asp:Label ID="lblNameHeader" Text="Name" runat="server" meta:resourcekey="lblNameHeaderResource1"/>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="lblNameValue" Text="<%# Eval("Name") %>"/>
</ItemTemplate>
</Columns>
</asp:GridView>
कोड के पीछे मैं इस तरह के कॉलम पर हेडरटेक्स्ट सेट तक पहुंचने का प्रयास कर रहा हूं
var headerText = gridView.Columns[0].HeaderText;
लेकिन मूल्य खाली आ रहा है और मैं इसे gridView.Columns "हेडर टेम्पलेट प्रॉपर्टी से भी पुनर्प्राप्त नहीं कर पा रहा हूं।
क्रिप्या मेरि सहायता करे।
उत्तर:
उत्तर № 1 के लिए 1आपके कोड के साथ आपको कई समस्याएं हैं।
आप एक बंद कर रहे हैं </asp:TemplateField>
. अपने asp:Label
एक गायब है runat="server"
विशेषता।
यदि आप .HeaderText प्रॉपर्टी का उपयोग करना चाहते हैं, तो यह आपका मार्कअप होना चाहिए:
<asp:GridView ID="gridView" ClientIDMode="Static" runat="server" AutoGenerateColumns="False" meta:resourcekey="grdViewResource">
<Columns>
<asp:TemplateField meta:resourcekey="TemplateFieldResource1" HeaderText="Name">
<ItemTemplate>
<asp:Label ID="lblNameValue" Text="<%# Eval("Name") %>" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
यदि आप इसमें कस्टम मार्कअप के साथ हेडर टेम्पलेट का उपयोग करना चाहते हैं, तो आपको कॉलम को टेम्पलेटफाइल पर डालना होगा, फिर उसके भीतर नियंत्रणों को एक्सेस करना होगा।