0

我怎样才能从母版页中指定下面的 HeadLoginName?(将其保存为变量)谢谢

 <asp:LoginView ID="HeadLoginView" runat="server" EnableViewState="false">
                <AnonymousTemplate>
                    <a href="~/login.aspx" ID="HeadLoginStatus" runat="server">Log In</a>
                </AnonymousTemplate>
                <LoggedInTemplate>
                    Welcome <span class="bold"><asp:LoginName ID="HeadLoginName" runat="server" /></span>!
                    [ <asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Log Out" LogoutPageUrl="~/logout.aspx"/> ]
                </LoggedInTemplate>
  </asp:LoginView>

在此处输入图像描述

4

2 回答 2

1

最终通过使用获取用户名: System.Web.HttpContext.Current.User.Identity.Name

简单得多。谢谢

于 2013-01-02T18:37:11.183 回答
0

您应该能够使用:

var view = (LoginView)(Page.Master.FindControl("HeadLoginView");
if (view != null)
{
   var loginName = (LoginName)view.FindControl("HeadLoginName");
   if (loginName != null)
   {

   }
}

有更好的设计模式可以公开这些类型的事情,您也可以这样做,例如为母版页提供接口定义,并将主属性转换为该接口。然后你可以暴露你想要的任何东西。

于 2013-01-02T17:31:35.380 回答