#asp.net #gridview
#asp.net #просмотр сетки
Вопрос:
Я хочу знать, есть ли способ динамического отображения содержимого поля шаблона из GridView.
Вот как выглядит сетка, и чего я хочу, так это каким-то образом получить отображаемую строку метки в коде за ней.
<asp:GridView runat="server" ID="simpleGrid" AutoGenerateColumns="false" Visible="false">
<Columns>
<asp:TemplateField HeaderText="Templated Date">
<ItemTemplate>
<asp:Label ID="firstLabel" Text='<%# Eval("Date") %>' runat="server"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Заранее спасибо,
Kali.
Комментарии:
1. Вы хотите сказать, что вам нужен HTML элемента управления Label?
2. Я спрашиваю, это ли то, что вы хотите сделать, или я неправильно понял вопрос. Так это то, что вы хотите сделать, или это что-то другое?
3. ДА… я хотел бы получить HTML отображаемой метки изнутри TemplateField.
Ответ №1:
Ну, единственный способ получить содержимое элемента управления — это использовать метод RenderControl с помощью чего-то вроде:
StringWriter strings = new StringWriter();
HtmlTextWriter html = new HtmlTextWriter(strings);
Label label = //find the reference to the label
label.RenderControl(html);
Это должно перенести разметку элемента управления в программу html writer и легко извлечь с помощью программы записи строк. Это один из способов. В противном случае нет прямого способа получить доступ к его HTML-коду, кроме как через javascript на стороне клиента.
HTH.