کنترل ورود به سیستم AJAX Control Toolkit Modal Popup Extender در ASP.Net
با سلام در این مقاله توضیح می دهیم که چگونه با استفاده از ورود کنترل در ASP.Net AJAX Toolkit Modal Popup، به راحتی می توان کاربر را وارد حساب کاربری خود کرد.
ورود کنترل کاربری
ما کنترل کاربری ورود را ایجاد خواهیم کرد که بعدها به کاربر اجازه می دهد تا با برنامه ی Modal Popup وارد سیستم شود
کد HTML
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
</asp:ScriptManagerProxy>
<asp:LinkButton ID="lnkLogin" runat="server" Text = "Login"></asp:LinkButton>
<asp:Panel ID="pnlLogin" runat="server" CssClass="modalPopup" style = "display:none">
<table width = "100%" cellpadding = "0" cellspacing = "0">
<tr>
<td align = "right">
<asp:LinkButton ID="lnkCancel" runat="server" Text = "[X]"></asp:LinkButton>
</td>
</tr>
<tr>
<td>
<asp:Login ID = "Login1" runat = "server" OnAuthenticate = "OnAuthenticate">
</asp:Login>
</td>
</tr>
</table>
</asp:Panel>
<cc1:ModalPopupExtender ID="popup" runat="server" DropShadow="false"
TargetControlID="lnkLogin" PopupControlID="pnlLogin"
BackgroundCssClass="modalBackground" CancelControlID="lnkCancel">
</cc1:ModalPopupExtender>
همان طور که در بالامیبینید ASP.Net ScriptManagerProxy و Modal Popup Extender Control را اضافه کردیم. در پنل Modal Popup ، یک کنترل ورود به سیستم عضو را قرار داده ایم که رویداد OnAuthenticate آن را تحت عنوان دستیار handler قرار می دهد.
C #
protected void OnAuthenticate(object sender, AuthenticateEventArgs e)
{
e.Authenticated = Membership.ValidateUser(Login1.UserName, Login1.Password);
if (!e.Authenticated)
{
popup.Show();
}
}
VB.Net
Protected Sub OnAuthenticate(ByVal sender As Object, ByVal e As AuthenticateEventArgs)
e.Authenticated = Membership.ValidateUser(Login1.UserName, Login1.Password)
If Not e.Authenticated Then
popup.Show()
End If
End Sub
در رویداد بالا به سادگی باعث ایجاد اعتبار کاربر با استفاده از روش ValidateUser می باشد. اگرنتوان به سیستم وارد شد , دوباره با modal popup پیام خطا نمایش می دهد.
قرار دادن کنترل کاربر در صفحه وب
ابتدا باید کنترل User را که ما آن را به روش زیر ساخته ایم ، ثبت میکنیم .
<%@ Register Src = "~/UserControls/UC_Login.ascx" TagName = "Login" TagPrefix = "uc" %>
در زیر کد HTML از صفحه است.
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<table>
<tr>
<td>
<asp:LoginView ID = "LoginView1" runat = "server">
<LoggedInTemplate>
Congratulations. You are now Logged in.
</LoggedInTemplate>
<AnonymousTemplate>
Please click Login to continue.
<uc:Login ID = "ucLogin" runat = "server" />
</AnonymousTemplate>
</asp:LoginView>
</td>
</tr>
</table>
</div>
</form>
در بالا کنترل User را در قالب ناشناس کنترل LoginView ASP.Net قرار داده اید.
