放两个panel,一个是登录窗口, 一个是登录后的信息显示当没登录时, Session["UserID"] 为空, 就显示登录框的panel如果进页面时发现 Session["User"] != null 且不为"", 则让个人信息的panel显示

解决方案 »

  1.   

    <asp:label id="xxx"/>if 注册 Then
    xxx.text="注销,ID"
    Else
    xxx.text="注册"
    End If
      

  2.   

    好像明白点了,能不能再具体点?panel一般用什么控件实现?还有如何记住登陆后的用户?用cookies如何实现?
      

  3.   

    <asp:Panel id="panel1" runat="server">
      用户名:<asp:TextBox ... />
      密码:  <asp:textbox ... />
    </asp:Panel>
    <asp:panel id="panel2" runat="server" visible="false">
      <asp:label id="label2" runat=server Text="" />
    </asp:panel>登录后就让panel1.Visible = false;
    让panel2.Visible = true;并给label2.Text = "用户信息";
      

  4.   

    if(Request.Cookie["UserID"] == null || Request.Cookie["UserID"] == "")
    {
    //未登录
    }
    else
    {
    //已登录
    }
      

  5.   

    注销只是一个链接,直接写在用户 信息的panel里面label2.Text = "欢迎你-- xxxx <br><br><a href='logout.aspx'>退出登录</a>";
      

  6.   

    我是用FRAME,登录后根据用户状态重新加载MENU.ASPX
      

  7.   

    还有一种方法,使用用户控件(这样可以自己很方便地添加许多功能):假设有两个用户控件,分别为user_login_s.ascx(用户登录),user_state_s.ascx(显示用户状态)。1.在.aspx文件中添加:<span id="user_state" runat="server"></span>
    2.在.aspx.cs的Page_Load事件中添加:
    Control c;
    if(Session["userName"]==null)
    {
    c=LoadControl("user_login_s.ascx");
    c.ID="userLoged";
    }
    else
    {
    c=LoadControl("user_state_s.ascx");
    c.ID="userNotLoged";
    }
    user_state.Controls.Add(c);