将<a> href绑定到Code Behind属性

dmr*_*dmr 5 asp.net data-binding properties code-behind hyperlink

我想在我的代码隐藏文件中设置一个公共属性,然后使用该属性来设置几个HtmlGenericControl <a>标记的href属性.这是我尝试过的:

代码背后:

public partial class className: System.Web.UI.MasterPage
{
        private string _linkValue = "";
        public string linkValue {
            get { return _linkValue; }
        }

        protected void Page_Load (object sender, EventArgs e)
        {
             SetLink();
        }

        private void SetLink()
        {
             _linkValue = "myUrl";
        }
}
Run Code Online (Sandbox Code Playgroud)

.aspx文件

<ul>
     <li><a runat="server" href="<%= linkValue %>">Link 1</a></li>
     <li><a runat="server" href="<%= linkValue %>">Link 2</a></li>
     <li><a runat="server" href="<%= linkValue %>">Link 3</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

href不是将href设置为"myUrl",而是将其设置为"myUrl" %3C%25=%20linkValue%25%3E1

mik*_*agg 3

如果这就是您想要对这些<a>标签执行的所有操作,则无需将它们设置为服务器端控件。摆脱它runat="server",它应该可以工作。