0

我有一个带有匿名模板和 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>

在这里,我试图在页面加载事件的登录视图中找到控件(超链接和图像)。但是使用此代码,我无法获得控制权并出现错误。
所以任何帮助都深表感谢。

 HyperLink hlkUsrProfile = (HyperLink)HeadLoginView.FindControl("hlkUsrProfile");
        Image imgUserPic = (Image)HeadLoginView.FindControl("imgUserPic");
4

1 回答 1

2

尝试这个:

(this.HeadLoginView.FindControl("hlkUsrProfile") as HyperLink).Text = "Some text";
(this.HeadLoginView.FindControl("imgUserPic") as Image ).ImageUrl= "Image Url";
于 2013-06-12T21:52:48.380 回答