我想知道是否有可能在aspx页面上有一个asp超链接,并在后面的代码中将它设置为Page_Load部分中的新超链接.我已经尝试了这个并且看起来不起作用,但是想要了解更多关于机制的知识(这是不起作用的,或者可以在页面生命周期的早期工作,或者为什么它不起作用).
示例代码
Aspx
<asp:HyperLink ID="myHyperLink" runat="server" />
Run Code Online (Sandbox Code Playgroud)
代码背后
var newHyperLink = new HyperLink();
newHyperLink.NavigateUrl= url;
newHyperLink.Text = "Hello World";
myHyperLink = newHyperLink;
Run Code Online (Sandbox Code Playgroud)
您不需要创建新控件,只需使用您声明的控件.你也没有使用正确的财产.
用以下代码替换你的代码:
myHyperLink.NavigateUrl = "http://url.com";
Run Code Online (Sandbox Code Playgroud)
我不相信你可以像你提到的那样覆盖控件,我认为这是通过父控件的控件集合添加或删除控件的情况.
也就是说,
<form id="form1" runat="server">
<div>
<asp:HyperLink ID="HyperLink1" runat="server">HyperLink</asp:HyperLink>
</div>
</form>
protected void Page_Load(object sender, EventArgs e)
{
HyperLink newHyperLink = new HyperLink();
newHyperLink.NavigateUrl = "http://google.com";
newHyperLink.Text = "Hello World";
Page.Form.Controls.Remove(HyperLink1);
Page.Form.Controls.Add(newHyperLink);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9951 次 |
| 最近记录: |