【发布时间】:2009-09-30 16:30:18
【问题描述】:
无法修改 Controls 集合,因为该控件包含代码块(即 )。
遇到问题时需要访问.aspx页面中的c#变量
请指导我们?
【问题讨论】:
-
您能提供更多关于您的具体情况的信息吗?这有点模糊。
标签: asp.net
无法修改 Controls 集合,因为该控件包含代码块(即 )。
遇到问题时需要访问.aspx页面中的c#变量
请指导我们?
【问题讨论】:
标签: asp.net
如果您提供有关您正在尝试做的事情的更多详细信息会有所帮助,但是您可以试试这个:
首先在aspx 标记protected 中创建您想要访问的任何变量。
然后在page_load方法中,调用DataBind();
然后在你的标记中你可以这样做:
<%# VariableName %>
“<%=”序列只能在服务器控件的特定上下文中使用。序列“<%#”用于 DataBound 控件,可以在 ASPX 页面标记中的任何上下文中使用。调用DataBind(); 允许您(几乎)在页面上的任何位置使用它。
【讨论】:
regression = (Session["Regression"]).ToString(); 然后在 .aspx 文件中使用它,例如 SelectCommand="SELECT [issue_oid], [issue_num], [regression], [status], [tested_by] , [tested_on], [patch_name], [arrived_on], [previous_info], [comment], [is_duplicate] FROM [itt_monthly_patch_issue_list] where status='Not Tested' and regression='<%#regression%>'" 但对我来说它不起作用。请建议我如何使用..
您将需要页面上可以进行数据绑定的内容。将该对象绑定到它的数据源,然后您可以在 .aspx 中对其进行“评估”。
例如,如果您已将控件(可能在代码隐藏中)绑定到具有名为“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”是属性之一。
【讨论】:
在您的 ASPX 中,但在您的 <%=x %> 代码周围有一个 <asp:literal runat=server> 控件。
【讨论】:
在变量后面声明 C# 代码公共或受保护,然后在 <% %> 块中使用它。
例如<%= strMyCodebehindvariable%> 或 <%# strMyCodebehindvariable%>。如果您使用第二个选项,那么您必须在页面加载中调用 DataBind() 方法。
【讨论】: