我有一个 loginview ,位于母版页中。在登录控件的登录模式下,我有一个超链接。我想访问超链接,但我得到错误(对象不是参考...)
我的代码是:
HyperLink hp = FindControl("LoginView1_").FindControl("hpMng") as HyperLink;
我有一个 loginview ,位于母版页中。在登录控件的登录模式下,我有一个超链接。我想访问超链接,但我得到错误(对象不是参考...)
我的代码是:
HyperLink hp = FindControl("LoginView1_").FindControl("hpMng") as HyperLink;
该FindControl
方法仅搜索您要查找的控件集合下的控件。它不会进行完整的递归搜索。
在你的情况下,你可以做这样的事情,因为你在同一页面上(MasterPage)
var h = this.login.FindControl("link") as HyperLink;
this.msg.Text = h.Text;
请记住,如果HyperLink
控件在其中,则LoggedInTemplate
它仅在用户登录时可用。如果HyperLink
控件在该控件中,则AnonymousTemplate
该控件将仅在用户尚未登录应用程序时可用。考虑到这一点以避免空引用异常
对我来说,它工作正常。你登录后试试?显然,如果您在 de 中声明了控件LoggedInTemplate
并且没有登录,则控件将不会被渲染。
?FindControl("HeadLoginView").FindControl("hpMng")
{Text = "aaa"}
System.Web.UI.WebControls.HyperLink: {Text = "aaa"}