如何在项目模板中使用代码块
How to use codeblocks in itemtemplates
我有一个带有多个 BoundField 的 gridview。他们的数据字段是统计设置的,但我有一个字段需要 eval 才能动态绑定到字段。由于 BoundField 不支持 Eval,我添加了一个 TemplateField。这是一个例子:
<asp:TemplateField HeaderText="<%$ Resources:Resource, Type%>" SortExpression="Description">
<ItemStyle CssClass="gridColumn_Header" />
<HeaderStyle CssClass="gridColumn_Header" />
<ItemTemplate>
<asp:Literal Text='<%# Eval('StreetType.Description') %>'/>
</ItemTemplate>
</asp:TemplateField>
但是,我收到一条错误消息,指出在此上下文中不支持代码块。
<asp: runat="server">
中似乎不允许使用代码块,这很奇怪。网格嵌套在几个面板和更新面板中,所有这些都需要 runat 才能在代码隐藏中获取引用。
虽然我找到了问题的答案,但我仍然没有解决方案。
<asp:TemplateField HeaderText="<%$ Resources:Resource, Type%>" SortExpression="Description">
<ItemStyle CssClass="gridColumn_Header" />
<HeaderStyle CssClass="gridColumn_Header" />
<ItemTemplate>
<asp:Literal Text='<%# Eval("StreetType.Description") %>'/>
</ItemTemplate>
</asp:TemplateField>
Eval 应该有双引号
我有一个带有多个 BoundField 的 gridview。他们的数据字段是统计设置的,但我有一个字段需要 eval 才能动态绑定到字段。由于 BoundField 不支持 Eval,我添加了一个 TemplateField。这是一个例子:
<asp:TemplateField HeaderText="<%$ Resources:Resource, Type%>" SortExpression="Description">
<ItemStyle CssClass="gridColumn_Header" />
<HeaderStyle CssClass="gridColumn_Header" />
<ItemTemplate>
<asp:Literal Text='<%# Eval('StreetType.Description') %>'/>
</ItemTemplate>
</asp:TemplateField>
但是,我收到一条错误消息,指出在此上下文中不支持代码块。
<asp: runat="server">
中似乎不允许使用代码块,这很奇怪。网格嵌套在几个面板和更新面板中,所有这些都需要 runat 才能在代码隐藏中获取引用。
虽然我找到了问题的答案,但我仍然没有解决方案。
<asp:TemplateField HeaderText="<%$ Resources:Resource, Type%>" SortExpression="Description">
<ItemStyle CssClass="gridColumn_Header" />
<HeaderStyle CssClass="gridColumn_Header" />
<ItemTemplate>
<asp:Literal Text='<%# Eval("StreetType.Description") %>'/>
</ItemTemplate>
</asp:TemplateField>
Eval 应该有双引号