I used this guys code but he seemed to have an unanswered thread
<!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<title>Simple Login Form with Ajax Submit - Ext.NET Examples</title>
<link href="/resources/css/examples.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="Form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<asp:Login ID="lgnControl" runat="server" EnableTheming="true" MembershipProvider="AspNetActiveDirectoryMembershipProvider">
<LayoutTemplate>
<ext:Window ID="LoginWindow" runat="server" Closable="false" Resizable="false" Height="150"
Icon="Lock" Title="Login" Draggable="true" Width="350" Modal="true" Layout="fit"
BodyBorder="false" Padding="5">
<Items>
<ext:FormPanel ID="frmLogin" runat="server" Border="false" Frame="true" BodyBorder="false"
BodyStyle="background:transparent;">
<Items>
<ext:TextField ID="Username" runat="server" FieldLabel="Username" AllowBlank="false"
BlankText="Username is required." MsgTarget="Side" AnchorHorizontal="90%" EnableKeyEvents="true"
EmptyText="enter username">
<Listeners>
<KeyPress Handler="if(e.getKey() == Ext.EventObject.ENTER){e.preventDefault(); #{txtPassword}.focus();}" />
</Listeners>
</ext:TextField>
<ext:TextField ID="Password" runat="server" InputType="Password" FieldLabel="Password"
AllowBlank="false" BlankText="Password is required." MsgTarget="Side" AnchorHorizontal="90%"
EnableKeyEvents="true" EmptyText="enter password">
<DirectEvents>
<KeyPress OnEvent="Login_OnClick" Before="if(!#{frmLogin}.getForm().isValid() || !chkKeyPress(params[1])) return false;Ext.Msg.wait('Verifying...', 'Authentication' );"
Failure="Ext.Msg.show({
title: 'Login Error',
msg: result.errorMessage,
buttons: Ext.Msg.OK,
icon: Ext.MessageBox.ERROR
});#{frmLogin}.reset();" />
</DirectEvents>
</ext:TextField>
</Items>
</ext:FormPanel>
</Items>
<Buttons>
<ext:Button ID="btnLogin" runat="server" Text="Login" Icon="Accept">
<DirectEvents>
<Click OnEvent="Login_OnClick" Before="if(!#{frmLogin}.getForm().isValid()) return false;Ext.Msg.wait('Verifying...', 'Authentication' );"
Failure="Ext.Msg.show({
title: 'Login Error',
msg: result.errorMessage,
buttons: Ext.Msg.OK,
icon: Ext.MessageBox.ERROR
});#{frmLogin}.reset();">
<EventMask MinDelay="250" />
<ExtraParams>
<ext:Parameter Name="ReturnUrl" Value="Ext.urlDecode(String(document.location).split('?')[1]).r || '/'"
Mode="Raw" />
</ExtraParams>
</Click>
</DirectEvents>
</ext:Button>
</Buttons>
</ext:Window>
</LayoutTemplate>
</asp:Login>
</form>
</body>
</html>
that gives this error:
Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.
Parser Error Message: Cannot create an object of type 'System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]' from its string representation 'false' for the 'BodyBorder' property.
Source Error:
Line 28: <asp:Login ID="lgnControl" runat="server" EnableTheming="true" MembershipProvider="AspNetActiveDirectoryMembershipProvider">
Line 29: <LayoutTemplate>
Line 30: <ext:Window ID="LoginWindow" runat="server" Closable="false" Resizable="false" Height="150"
Line 31: Icon="Lock" Title="Login" Draggable="true" Width="350" Modal="true" Layout="fit"
Line 32: BodyBorder="false" Padding="5">