我有一个带有匿名模板和LoggedInTemplate的LoginView。我想在页面加载事件中找出LoggedInTemplate中包含的控件。
<asp:LoginView ID="HeadLoginView" runat="server" EnableViewState="false">
<AnonymousTemplate>
<asp:HyperLink NavigateUrl="~/Account/Login.aspx" ID="HeadLoginStatus" runat="server" Text="Log In" />
</AnonymousTemplate>
<LoggedInTemplate>
<%-- <span >--%>
<asp:Image ID="imgUserPic" CssClass="profilePic floatRight cursor" runat="server" />
<a href="#" class="hlnkstyle">
<asp:Label ID="lblLoginUser" runat="server" class="show_hide"/>
</a>
<%--</span>--%>
<div class="slidingDiv imgHover">
<asp:Image ID="imgSlidingUserPic" CssClass="slidingPic" runat="server" />
<div class="clr"></div>
<asp:Label ID="lblUserName" Font-Bold="true" runat="server" />
<br /><asp:Label ID="lblEmail" ForeColor="#666" runat="server" />
<br /><br />
<asp:HyperLink id="hlkUsrProfile" CssClass="lnkprofilestyle" runat="server">View Profile</asp:HyperLink>
<div class="innerSlidingDiv">
<asp:HyperLink ID="hlkUsrAccount" NavigateUrl="~/Account/ChangePassword.aspx" runat="server">Account</asp:HyperLink>
<asp:LoginStatus ID="LoginStatus1" style=" float:right;" runat="server" LogoutAction="Redirect" LogoutText="Log Out" LogoutPageUrl="~/Account/Login.aspx"
onloggingout="HeadLoginStatus_LoggingOut"/>
</div>
</div>
</LoggedInTemplate>
</asp:LoginView>
这里我试图在页面加载事件的登录视图中找到控件(Hyper Link&amp; Image)。 但是使用此代码,我无法获得控制权并收到错误 所以任何帮助都深受赞赏。
HyperLink hlkUsrProfile = (HyperLink)HeadLoginView.FindControl("hlkUsrProfile");
Image imgUserPic = (Image)HeadLoginView.FindControl("imgUserPic");
答案 0 :(得分:2)
试试这个:
(this.HeadLoginView.FindControl("hlkUsrProfile") as HyperLink).Text = "Some text";
(this.HeadLoginView.FindControl("imgUserPic") as Image ).ImageUrl= "Image Url";