Last Updated: 03 Oct 2019 15:43 by ADMIN

The RadWindow width and height are not persisted when the control has been minimized before a PostBack (or navigation to another page).

Steps to reproduce:

1. Run the code below.
2. Click the "Open" Button
3. Minimize RadWindow
5. Click the "PostBack" button
6. Maximize RadWindow

Result: The restored RadWindow has wrong size

        <telerik:RadButton ID="Btn1" runat="server" Text="Open" AutoPostBack="false" OnClientClicked="openFirst"></telerik:RadButton>
        <br />
        <telerik:RadButton runat="server" ID="RadButton1" Text="Postback" AutoPostBack="true" />

        <telerik:RadWindowManager ID="RadWindowManager1" runat="server" EnableViewState="false" PreserveClientState="true">
                <telerik:RadWindow ID="radWindow_Evidence" runat="server" Title="Evidence" EnableViewState="false" AutoSize="false" DestroyOnClose="true" ReloadOnShow="true"
                    VisibleTitlebar="true" VisibleStatusbar="false" Width="900px" Height="500px"
                    Behaviors="Close,Minimize,Move,Resize,Maximize" Left="320px" Top="0px">
                        Some content

            function openFirst() {
                radopen(null, "radWindow_Evidence");

Last Updated: 01 Oct 2019 15:08 by ADMIN

Steps to reproduce: 

1) Start dragging a RadWindow;

2) While dragging, use the mouse scroll to scroll the page

Result: The cursor will not be on the title bar anymore.

Last Updated: 30 Oct 2019 08:41 by ADMIN
Created by: Kasim
Comments: 5
Category: Window
Type: Feature Request

Bug 1:

When RadWindow behavior is set to Maximize/Minimize only, the expected behavior is while minimized, it must only show Maximize button and when maximized, it should show minimize button. 

Currently, it is showing restore button on minimizing and then it restores to a random size.

Bug 2:

Page reloads on maximizing the minimized page.

  1. If the page requires authentication, the user has to login again.
  2. If the user is on some of the internal pages on a portal, the user is redirected to the login page without referer URL.
Last Updated: 23 Jan 2018 17:03 by ADMIN
The content scrollbars of RadWindow are not shown in Lightweight if ShowContentDuringLoad="false". The bug is specific to Chrome.

1. Use the control in RenderMode=Classic

2. Enable the ShowContentDuringLoad="true" property

3. or attach a handler to the RadWindow's OnClientPageLoad proeprty and call the restore() method of the control in it:

        <telerik:RadWindow RenderMode="Lightweight" ID="RadWindow1" ShowContentDuringLoad="false" VisibleOnPageLoad="true" Width="600px" Height="400px" Title="Wikipedia" OnClientPageLoad="onLoad"
            NavigateUrl="" runat="server">
            function onLoad(sender, args) {

Steps to reproduce:

1. Run the following code:

        <telerik:RadWindow RenderMode="Lightweight" ID="RadWindow1" ShowContentDuringLoad="false" VisibleOnPageLoad="true" Width="600px" Height="400px" Title="Wikipedia"
            NavigateUrl="" runat="server">

Result: No scroll bars are shown, they apper after moving the window

Last Updated: 23 Jun 2017 13:04 by ADMIN
Created by: Ivan Danchev
Comments: 1
Category: Window
Type: Bug Report

Last Updated: 20 Apr 2017 13:22 by Tom
Scenario description and workaround follow. Note the comments in the workaround and test before using, because it introduces some other unwanted behaviors, mostly related to the bottom/right edge of the zone.

     <div id="zone" style="width: 600px; height: 500px; background: yellow;"></div>
            <telerik:RadWindow runat="server" ID="rw1" RenderMode="Lightweight" VisibleOnPageLoad="true" Left="0" Top="0" RestrictionZoneID="zone"></telerik:RadWindow>
                Telerik.Web.UI.Window.LightweightView.prototype._resizingHandler = function(resizable, args){

                    var edges = this.restrictBounds,
                        bounds = this._getResizeBounds(args),
                        borders = this.resizeHelper.borders,
                        fullBounds = {
                            x: bounds.x - borders.left,//originally, subtract
                            y: bounds.y -,//originally, subtract
                            width: bounds.width + borders.horizontal,
                            height: bounds.height + borders.vertical};
                    //changing the direction in which borders are counted above (+ or -) changes the behavior and the potential issues
                    //if you subtract from the position, resizing will not be available next to the top/left border of the restriction zone
                    //if you add to the position, resizing will be available but the user can resize in the direction of the zone bounds and thus, out of the bounds of the zone, so dragging may become unavailable
                    //also, this will make resizing worse when the window touches the right or bottom of the zone
                    var inContainer = this.window._checkRestrictionZoneBounds(edges, fullBounds);
                    bounds.width = Math.max(resizable.options.constraints.minWidth, bounds.width);
                    bounds.height = Math.max(resizable.options.constraints.minHeight, bounds.height);

                    if(inContainer && this.touchCount++ > 0)
                        var style =;
                        style.left = bounds.x + "px";
               = bounds.y + "px";

                        this._currentResizeBounds = bounds;

Add this to the resizeEnd and dragEnd events of the RadWindow to try and have it never touch the sides of the restriction zone at all.

				function keepThisWindowInBounds(sender) {
					if (!sender.isMinimized() && !sender.isMaximized()) {
						var position = sender.getWindowBounds();
						var rzRect = document.getElementById(sender._restrictionZoneID).getBoundingClientRect();
						// note rzRect height and width are both 1px bigger than the rzElement clientWidth and clientHeight
						// check width and height
						if (position.width > rzRect.width - 3) {
							position.width = rzRect.width - 3;
						if (position.height > rzRect.height - 3) {
							position.height = rzRect.height - 3;
						var needToMove = false;
						if (position.x < 1) {
							needToMove = true;
							position.x = 1;
						} else if (position.x > rzRect.width - position.width - 2) {
							needToMove = true;
							position.x = rzRect.width - position.width - 2;
						if (position.y < 1) {
							needToMove = true;
							position.y = 1;
						} else if (position.y > rzRect.height - position.height - 2) {
							needToMove = true;
							position.y = rzRect.height - position.height - 2;
						if (needToMove)
							sender.moveTo(position.x, position.y);
Last Updated: 17 Nov 2015 09:08 by ADMIN
Here is a script override that can help:

Telerik.Web.UI.Widgets.Draggable.prototype._calcConstraints = function (delta, position, constraints)
            var $ = $telerik.$;
            var result = delta;
            //CHANGED THIS **********************************************************************************************************
            //Otherwise window can't be moved all the way to the right or bottom of screen
            //var elementWidth = this._element.offsetWidth;
            //var elementHeight = this._element.offsetHeight;
            var elementWidth = $(this._element).width();
            var elementHeight = $(this._element).height();
            if ((constraints.maxX != null && position.x + elementWidth > constraints.maxX) ||
                (constraints.minX != null && position.x < constraints.minX) ||
                (constraints.maxY != null && position.y + elementHeight > constraints.maxY) ||
                (constraints.minY != null && position.y < constraints.minY)
                return { x: 0, y: 0 };
            if (delta.x < 0)
                result.x = constraints.minX !== null && !isNaN(constraints.minX) ?
                    Math.max(delta.x, constraints.minX - position.x) :
                result.x = constraints.maxX !== null && !isNaN(constraints.maxX) ?
                    Math.min(delta.x, constraints.maxX - position.x - elementWidth) :
            if (delta.y < 0)
                result.y = constraints.minY !== null && !isNaN(constraints.minY) ?
                    Math.max(delta.y, constraints.minY - position.y) :
                result.y = constraints.maxY !== null && !isNaN(constraints.maxY) ?
                    Math.min(delta.y, constraints.maxY - position.y - elementHeight) :
            return result;
Last Updated: 24 Jun 2015 11:27 by ADMIN
The following CSS will override the built-in rules to improve the icons positioning:

            div.RadWindow_Glow .rwTable .rwTitlebarControls .rwIcon
                margin: 3px 5px 0 0;

            div.RadWindow_Silk .rwTable .rwTitlebarControls .rwIcon
                margin: 2px 5px 0 0;

            div.RadWindow_Bootstrap .rwTable .rwTitlebarControls .rwIcon
                margin: 6px 5px 0 0;
Last Updated: 29 Jul 2016 14:09 by ADMIN
At present, when a RadWindow is pinned, it still uses position: absolute and an interval is initiated to recalculate its position every 100ms. This causes it to visibly "jump" when the user scrolls the page because of the interval update in its location.

Instead, position: fixed should be used to avoid the position calculation on an interval.
Last Updated: 24 Mar 2014 17:14 by ADMIN
When a RadAlert or RadConfirm is shown without an image (the last argument to their call is an empty string),the radalert/rwAlertDialog and radconfirm/rwConfirmDialog classes go missing from the control's elements (the pairs are for the Classic and Lightweight render modes respectively).
Since these classes are sometimes used to cascade and apply custom styling to this dialog, their removal may be unwanted.
There are several ways to work around this:

-   keep the image, if suitable for your case (i.e., remove the last argument from the RadAlert() call). For example:
RadWindowManager1.RadAlert(text, 330, 150, "", null);

-   use a blank, transparent image instead of no image. It could be 1 transparent pixel (attached here).

-   place the desired style inline in the template. Here is an example for the Lightweight mode:
    <div class="rwDialog rwAlertDialog">
        <div class="rwDialogContent">
            <div class="rwDialogMessage" style="font-size: 30px;">
        <div class="rwDialogButtons">
            <input type="button" value="OK" class="rwOkBtn" onclick="$find('{0}').close(true); return false;" />

-   change the cascade to also affect the other two types of predefined dialogs. For example
    font-size: 30px;

-   use a RadNotification to show the message instead:
Last Updated: 16 Sep 2013 09:52 by ADMIN
A function that is attached to this event is triggered on clicking the RadWindow's toolbar, even if it is already active. 
Last Updated: 11 Sep 2013 16:22 by ADMIN
Currently when external content is loaded in RadWindow, scollbars appear in the content and the control is dragged, the position of the scrollbars will be reset in IE10.
The attached sample demonstrates a workaround for this issue.
Last Updated: 21 Aug 2013 10:43 by ADMIN
This iframe element has an empty html tag that can cause issues with the Section 508 validation.
Also, the iframe is not used so it does not need to be present in the markup at all.

The following script added to the OnClientShow event of the RadWindowManager can remove this iframe:
		function OnClientShow(sender, args)
			if (!sender._isPredefined) return; //check if it is a predefined dialog
			var frame = $telerik.$("iframe", sender.get_popupElement());
Last Updated: 20 May 2014 13:22 by ADMIN
Currently, when a maximized RadWindow is closed the OnClientCommand event handler is called with a command "Restore" because when a maximized RadWindow is being closed it is first restored.

A flag can be used to avoid it, see the attachment.
Last Updated: 28 Mar 2016 07:22 by ADMIN
When the input inside RadWindow is focused the on-screen keyboard is shown, the page is scrolled so the input is into view above the keyboard and then the keyboard hides automatically. This is caused by using a RestrictionZone. Remove this property to avoid the behavior.
Last Updated: 04 Sep 2013 08:19 by Jason
Created by: Jason
Comments: 0
Category: Window
Type: Bug Report
When using DOCTYPE //W3C//DTD XHTML 1.0 Strict//EN and setting height to 100px 
RadWindow AutoResize=True gives problems in IE10 by adding unnecessary scrollbars, and in Chrome, FF and Safari the window is to high (approx. 55px too much).

Refers to forum entry:
(I used the same sample project to replicate the problem).

 Please see attached screenshot and project.
Last Updated: 04 Sep 2013 08:19 by ADMIN
Created by: Marin Bratanov
Comments: 0
Category: Window
Type: Feature Request
When a RestrictionZone is used the RadWindows are not positioned correctly in all cases.
When the number of windows is low (e.g. below approximately 6) the dimensions set to the RadWindows are not optimal. In some cases not all the available viewport is filled even if the number of popups matches the needed (e.g. 6 instances should be able to cover the viewport, but they cover about 2/3 of its height).