<%
@ Page Language="VB" AutoEventWireup="false" CodeFile="modalpopup.aspx.vb" Inherits="modalpopup" %>
<%
@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head id="Head1">
</
head>
<
body class="BODY">
<form id="Form1" method="post" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<p>
When you click the button below, a modal RadToolTip will show, that will "block"
the page while you perform some operation (e.g. AJAX Request) and the page is unavailable
for the user until the operation ends up.
</p>
<telerik:RadToolTip ID="RadToolTip1" runat="server" Modal="true" ShowEvent="FromCode"
Position="Center" RelativeTo="BrowserWindow" OnClientBeforeHide="OnClientBeforeHide"
Width="130px">
<img src="./Images/loading.gif" width="130" height="60" alt=" " /><br />
</telerik:RadToolTip>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<
asp:Button ID="Button1" runat="server" Text="Simulate long AJAX request" OnClick="Button1_Click"
CssClass
="button" Style="display: block; float: left;" />
</ContentTemplate>
</asp:UpdatePanel>
<br /><br /><br />
<script type="text/javascript">
//<![CDATA[
var toHide = false;
function OnClientBeforeHide(sender, args) {
if (!toHide) args.set_cancel(true);
}
//Attach to event that will indicate when ajax request is complete
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest
(
function(sender, args) {
toHide =
false;
if (args.get_postBackElement().id == "Button1") {
var tooltip = $find("<%= RadToolTip1.ClientID %>");
tooltip.show();
}
else if (args.get_postBackElement().id == "Button2") {
var tooltip = $find("<%= RadToolTip2.ClientID %>");
tooltip.show();
}
}
);
function GetActiveToolTip() {
var tooltip = Telerik.Web.UI.RadToolTip.getCurrent();
return tooltip;
}
//Attach to event that will indicate when ajax request is complete
Sys.WebForms.PageRequestManager.getInstance().add_endRequest
(
function(sender, args) {
var tooltip = GetActiveToolTip();
if (tooltip != null && tooltip.get_id() == "RadToolTip1") {
toHide =
true;
tooltip.hide();
}
}
);
function HideToolTip() {
var tooltip = GetActiveToolTip();
if (tooltip.get_id() == "RadToolTip2") {
toHide =
true;
tooltip.hide();
}
};
function ToggleFirstPopup() {
$find(
"<%= RadDatePicker1.ClientID %>").showPopup();
};
//]]>
</script>
<p>
The button below opens a registration form and "blocks" the page until the user
has submitted it.
</p>
<p>
<asp:Button ID="Button2" runat="server" Text="Show Login Form" CssClass="button" />
</p>
<telerik:RadToolTip ID="RadToolTip2" runat="server" Modal="true" ShowEvent="FromCode"
Position="Center" RelativeTo="BrowserWindow"
OnClientBeforeHide="OnClientBeforeHide" ManualClose="True">
<asp:UpdatePanel runat="server" ID="UpdatePanel2">
<ContentTemplate>
<asp:Panel ID="pInquiry" runat="server" Style="padding-left: 11px;">
Log in:
<br />
<br />
<table>
<tr>
<td style="width: 200px">
Hours
<asp:RequiredFieldValidator ID="rfvHours" ControlToValidate="txtHours" Display="Dynamic" runat="server" ErrorMessage="[Required]"></asp:RequiredFieldValidator>
:
<br />
<asp:TextBox ID="txtHours" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width: 200px">
Target Date:
<asp:RequiredFieldValidator ID="rfvTargetDate"
ControlToValidate="RadDatePicker1" Display="Dynamic" runat="server"
ErrorMessage="[Required]"></asp:RequiredFieldValidator>
<br />
<telerik:RadDatePicker ID="RadDatePicker1" runat="server"
Culture="English (United States)" Skin="Vista" Style="vertical-align: middle;"
Width="200px">
<Calendar Skin="Vista" UseColumnHeadersAsSelectors="False"
UseRowHeadersAsSelectors="False" ViewSelectorText="x">
</Calendar>
<DatePopupButton HoverImageUrl="" ImageUrl="" Visible="false" />
<DateInput ID="DateInput1" runat="server" DateFormat="D"
onclick="ToggleFirstPopup()">
</DateInput>
</telerik:RadDatePicker>
</td>
</tr>
<tr>
<td style="width: 200px">
Priority:
<br />
<telerik:RadComboBox ID="RadComboBox1" runat="server" AllowCustomText="True"
EmptyMessage="Select a priority...">
<Items>
<telerik:RadComboBoxItem runat="server" Text="1" Value="1" />
<telerik:RadComboBoxItem runat="server" Text="2" Value="2" />
<telerik:RadComboBoxItem runat="server" Text="3" Value="3" />
</Items>
</telerik:RadComboBox>
</td>
</tr>
<tr>
<td style="width: 200px">
Tech:
<br />
<telerik:RadComboBox ID="RadComboBox2" runat="server" AllowCustomText="true" EmptyMessage="Select a techie..."></telerik:RadComboBox>
</td>
</tr>
<tr>
<td style="width: 100px">
<asp:Button ID="btnLogIn" runat="server" Text="Log in" OnClick="btnLogIn_Click" /> <button id="btnCancel" onclick="HideToolTip()">Cancel</button></td>
</tr>
<tr>
<td style="width: 100px">
<asp:Label ID="lblError" Width="150px" runat="server" Visible="false" ForeColor="red"></asp:Label>
</td>
</tr>
</table>
<telerik:RadInputManager ID="RadInputManager1" runat="server">
<telerik:NumericTextBoxSetting BehaviorID="NumercBehavior2" EmptyMessage="type.." Type="Number">
<TargetControls>
<telerik:TargetInput ControlID="txtHours" />
</TargetControls>
</telerik:NumericTextBoxSetting>
</telerik:RadInputManager>
</asp:Panel>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</telerik:RadToolTip>
<br />
</form>
</
body>
</
html>