2011-01-19 12 views
-1

私はASP.NETで新しく、いくつかの問題を抱えています。私が下に持っているものは、登録とログインです(両方とも1ページにあります)。しかし、ユーザーがログインしているときは、登録とログインフォームを隠したいと思います。 ユーザーがログインしているときにLOGOUTオプションがあります。 ガイダンスがあれば、ありがとうございます!ユーザーがASP.NETにログインしているときに登録フォームとログインフォームを非表示にする

<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" Title="Untitled Page" %> 

<script runat="server"> 
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) 

    End Sub 

    Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) 

    End Sub 

    Protected Sub Login1_Authenticate1(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) 

    End Sub 

    Protected Sub Login1_Authenticate2(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) 

    End Sub 



Protected Sub CreateUserWizard1_CreatedUser(ByVal sender As Object, ByVal e As System.EventArgs) 

End Sub 
</script> 

<%-- Add content controls here --%> 
<asp:Content ID="Content1" runat="server" 
    contentplaceholderid="ContentPlaceHolder1"> 
    <table width="640px"><tr> 
    <td width="360px"> 
        <p> 
         <asp:CreateUserWizard ID="CreateUserWizard1" runat="server"> 
          <WizardSteps> 
           <asp:CreateUserWizardStep runat="server" /> 
           <asp:CompleteWizardStep runat="server" /> 
          </WizardSteps> 
         </asp:CreateUserWizard> 
</p> 
        <br /> 
        <br /> 
        </td> 
        <td width="270px"> 
         <p> 
     <asp:Login ID="Login1" runat="server" DestinationPageUrl="~/Home.aspx"> 
     </asp:Login> 
     <asp:LoginView ID="LoginView1" runat="server"> 
      <AnonymousTemplate> 
       Please log In 
      </AnonymousTemplate> 
     </asp:LoginView> 
</p> 
    <p> 
     <asp:LoginStatus ID="LoginStatus1" runat="server" /> 
</p> 
</td> 
</tr> 
</table> 


</asp:Content> 

答えて

0

User.Identity.IsAuthenticatedを使用して、認証されているかどうかを判断できます。そうであれば、コントロールの表示をfalseに設定できます。私はLoginViewをお勧めしたい

if (User.Identity.IsAuthenticated) 
      CreateUserWizard1.Visible = Login1.Visible = False 
+0

こんにちは、返信いただきありがとうございます。しかし、私はこれまでのチュートリアルの例を使ってビルドしています。しばらくお待ちください、私に例を挙げてください。ありがとう! – endero

+0

ねえ、ありがとう!ログインしていないユーザーに対してこれを変更するにはどうすればいいのか教えてください。(User.Identity.IsAuthenticated) – endero

0

:あなたのPage_Loadメソッドで

は、このようなものを置きます。

<asp:LoginView ID="LoginView1" runat="server"> 
     <LoggedInTemplate> 
      <asp:LoginStatus ID="LoginStatus1" runat="server" /> 
      <asp:LoginName ID="LoginName1" runat="server" /> 
     </LoggedInTemplate> 
     <AnonymousTemplate> 
      <p> 
       <asp:Login ID="Login1" runat="server"> 
       </asp:Login> 
      </p> 
      <p> 
      <asp:CreateUserWizard ID="CreateUserWizard1" runat="server"> 
       <WizardSteps> 
        <asp:CreateUserWizardStep runat="server" /> 
        <asp:CompleteWizardStep runat="server" /> 
       </WizardSteps> 
      </asp:CreateUserWizard> 
      </p> 
     </AnonymousTemplate> 
</asp:LoginView> 
+0

ありがとうございました! (User.Identity.IsAuthenticated)にログインしていないユーザーに対してこれを変更するにはどうすればいいのか教えてください – endero

0
<asp:Login VisibleWhenLoggedIn="True|False" /> 

    Gets or sets a value indicating whether to show the Login control after the user is authenticated. 

    For Example: 
    <%@ Page Language="VB" AutoEventWireup="False"%> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" > 
    <head> 
     <title>Login Sample</title> 
    </head> 
    <body> 
     <form id="form1" runat="server"> 
      <asp:Login id="Login1" runat="server" 
       VisibleWhenLoggedIn="false"> 
      </asp:Login> 
    </form> 
    </body> 
    </html>