.cs文件:
public partial class Default2 : System.Web.UI.Page
{
public string s;
protected void Page_Load(object sender, EventArgs e)
{
s = "Director";
}
}
.aspx文件:
<asp:TreeView ID="TreeView1" runat="server">
<Nodes>
<asp:TreeNode Text="<%=s %>"></asp:TreeNode>
</Nodes>
</asp:TreeView>
此输出&lt;%= s%&gt;而不是s的值。
答案 0 :(得分:1)
您实际上无法在“ <%= ... %>
显示表达式”标题下的服务器标记属性中使用这些类型的表达式,"Introduction to ASP.NET inline expressions in the .NET Framework" (MSDN):
请记住,显示表达式不能用于 服务器控件的属性。这是因为.NET Framework 直接编译整个表达式而不是显示 content作为属性的值。
如果您确实要设置该节点的值,在您的示例中,您必须将其设置为:
public string s;
protected void Page_Load(object sender, EventArgs e)
{
s = "Director";
TreeView1.Nodes[0].Text = s;
}