如何在.aspx页面中访问c#变量的值?

时间:2009-09-30 16:30:18

标签: asp.net

无法修改Controls集合,因为控件包含代码块(即<%...%>)。

我们需要在遇到问题时访问.aspx页面中的c#变量

请指导我们?

4 个答案:

答案 0 :(得分:20)

如果您提供有关您尝试做的更多详细信息会有所帮助,但您可以尝试这样做:

首先在aspx标记protected中创建要访问的所有变量。

然后在page_load方法中,调用DataBind();

然后在你的标记中你可以这样做:

<%# VariableName %>

<%=”序列只能在服务器控件的某些上下文中使用。序列“<%#”用于DataBound控件,可以在ASPX页面标记的任何上下文中使用。调用DataBind();允许您(几乎)在页面的任何位置使用它。

答案 1 :(得分:0)

您需要页面上可以绑定数据的内容。将该对象绑定到它的数据源,然后您可以在.aspx中对其执行“Eval”。

例如,如果您已将控件(可能在代码隐藏中)绑定到具有名为“Author”的属性的对象,则可以按以下方式显示它:

<asp:TableRow ID="trwMsgAuthor" runat="server">
   <asp:TableCell ID="TableCell2" runat="server" Width="1in">Author:</asp:TableCell>
   <asp:TableCell runat="server" ID="celMsgAuthor"><%#Eval("Author")%></asp:TableCell>
</asp:TableRow>

此示例中的表是Accordion控件的一部分,其中“.DataSource”属性设置为对象的通用列表,其中“Author”是其中一个属性。

答案 2 :(得分:0)

在变量public或protected后面声明C#代码,然后在<% %>块中使用它。 例如<%= strMyCodebehindvariable%><%# strMyCodebehindvariable%>。如果您使用的是第二个选项,则必须在页面加载中调用DataBind()方法。

答案 3 :(得分:0)

在您的ASPX中,<asp:literal runat=server><%=x %>代码进行{{1}}控制。