If you request the Login.aspx page directly, after you successfully log in, you are redirected to the Default.aspx page.
If you add the Login control to a page other than the Login.aspx page, you need to set the Login control's DestinationPageUrl property.
When you successfully log in, you are redirected to the URL represented by this property.
If you don't supply a value for the DestinationPageUrl property, the same page is reloaded.
Automatically Hiding the Login Control from Authenticated Users
The easiest way to add a Login control to all the pages in an application is to take advantage of Master Pages.
You can change the layout of the Login control by modifying the Login control's Orientation property.
If you set this property to the value Horizontal, then the Username and Password text boxes are rendered in the same row.
If you include a Login control in all your pages, you should also modify the Login control's VisibleWhenLoggedIn property.
If you set this property to the value False, then the Login control is not displayed when a user has already authenticated.
File: LoginMaster.master
<%@ Master Language="C#" %>
<!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 id="Head1" runat="server">
<title>My Website</title>
</head>
<body>
<form id="form1" runat="server">
<div class="content">
<asp:Login
id="Login1"
Orientation="Horizontal"
VisibleWhenLoggedIn="false"
DisplayRememberMe="false"
TitleText=""
CssClass="login"
Runat="server" />
<hr />
<asp:contentplaceholder
id="ContentPlaceHolder1"
runat="server">
</asp:contentplaceholder>
</div>
</form>
</body>
</html>
File: LoginContent.aspx
<%@ Page Language="C#" MasterPageFile="~/LoginMaster.master" %>
<asp:Content
ID="Content1"
ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<h1>Welcome to our Website!</h1>
</asp:Content>
|