
Introduction
I want to take this opportunity to introduce a sample application which shows how to use ModalPopupExtender for Logging and Signup for any ASP.NET web application. In this quick demonstration, I am going to show you how we can implement Modal Dialog Box using AJAX in ASP.NET. Modal Dialog Box (Formally called ModalPopupExtender) is extremely essential in today’s application as it avoids redirecting to a new page just to login or signup the users. A simple example can show how to implement the same.
Background
I was just looking around to use modalpopupextender for login & signup for my site...but I could not find one. So finally ended up creating this login sample application so it might be useful for everyone.
Using the Code
To start with lets understand about Modalpopup...
ModalPopup Description
The ModalPopup extender allows a page to display content to the user in a "modal" manner which prevents the user from interacting with the rest of the page. The modal content can be any hierarchy of controls and is displayed above a background that can have a custom style applied to it. When displayed, only the modal content can be interacted with; clicking on the rest of the page does nothing. When the user is done interacting with the modal content, a click of an OK/Cancel control dismisses the modal content and optionally runs custom script.
ModalPopup Properties:
The control above is initialized with this code. The display on the modal popup element is set to none to avoid a flicker on render. The italic properties are optional:
<ajaxToolkit:ModalPopupExtender ID="MPE" runat="server"
TargetControlID="LinkButton1"
PopupControlID="Panel1"
BackgroundCssClass="modalBackground"
DropShadow="true"
OkControlID="OkButton"
OnOkScript="onOk()"
CancelControlID="CancelButton"
PopupDragHandleControlID="Panel3" />
- TargetControlID - The ID of the element that activates the modal popup
- PopupControlID - The ID of the element to display as a modal popup
- BackgroundCssClass - The CSS class to apply to the background when the modal popup is displayed
- DropShadow - True to automatically add a drop-shadow to the modal popup
- OkControlID - The ID of the element that dismisses the modal popup
- OnOkScript - Script to run when the modal popup is dismissed with the OkControlID
- CancelControlID - The ID of the element that cancels the modal popup
- OnCancelScript - Script to run when the modal popup is dismissed with the CancelControlID
- PopupDragHandleControlID - The ID of the embedded element that contains the popup header/title which will be used as a drag handle
- X - The X coordinate of the top/left corner of the modal popup (the popup will be centered horizontally if not specified)
- Y - The Y coordinate of the top/left corner of the modal popup (the popup will be centered vertically if not specified)
- RepositionMode - The setting that determines if the popup needs to be repositioned when the window is resized or scrolled.
This shows how you define modalpopup extender for login and signup screen buttons...
<modalpopupextender id="ModalPopupExtenderLogin" runat="server" targetcontrolid="Loginlnk" popupcontrolid="LoginPanel" backgroundcssclass="modalBackground" dropshadow="true" okcontrolid="LoginBtn" önokscript="ok()" cancelcontrolid="CancelBtn" /><modalpopupextender id="ModalPopupExtenderSignup" runat="server" targetcontrolid="Signuplnk" popupcontrolid="SignupPanel" backgroundcssclass="modalBackground" dropshadow="true" okcontrolid="JoinBtn" önokscript="okJoin()" cancelcontrolid="CancelBtn2" />
Installation:
Download Ajax toolkit Version 1.0.20229 from this link...
http://www.codeplex.com/AtlasControlToolkit/Release/ProjectReleases.aspx?ReleaseId=11121
Also you need ASP.NET AJAX Extensions 1.0 for ASP.NET 2.0...you can get this from this link...
http://www.asp.net/ajax/downloads/
Once you have all those....open the sample project in VS2005 and it should work.