Dock - Render Modes

Render mode comparison

Render mode
Classic vs. Light rendering
Classic Lightweight
Markup Size 5.03 KB 5.20 KB
CSS Size 7.2 KB 5.03 KB
Image Sprite Size * 4.13 KB 17.04 KB
Isolate this demo as a stand-alone application
  • About this demo
  • C#
  • VB

This demo showcases the two different rendering modes of Telerik's ASP.NET Dock control: Classic and Lightweight.

  • Classic rendering is the long-standing rendering mode of the control in which its layout is implemented using table elements.
  • Lightweight rendering leverages HTM5 and CSS3 to deliver semantic HTML to the browser, but the control may lose its rounded corners, gradients and shadows in non-modern browsers. With this rendering, some table elements in the control layout are replaced with generic elements, such as div and span.

There is also a Native render mode option inherited directly from RenderMode. As RadDock does not have a specific HTML element, the Native render mode will have the same effect as the Classic one.

The default render mode of the control is Classic and you have the option to either explicitly set it to Lightweight or leverage the Auto mode to have the control choose the best rendering based on the user's browser.

Note: In order to provide optimal experience for your end users, we recommend that you use only one type of render mode for a control on a given page. For example, if you have two instances of RadDock on the page, it will be best if both of them use the same render mode.

Note: The Material skin is available only for the modern Lightweight render mode. Change the skin or the mode to properly visualize the demonstrated control.

Notes on the statistics:
The markup size is calculated automatically in the code-behind by rendering a simple RadDock instance on a blank page.
* - The larger size of the sprite is due to the common spite RadDock uses for its buttons and arrows. A lot of Telerik controls use this sprite, so with more complex pages it will be loaded only once, which will, ultimately, make it more efficient. The Classic RenderMode also performs several requests for image sprites, even if they are smaller in size.

  • DefaultCS.aspx
  • DefaultCS.aspx.cs
  • styles.css
<%@ Page Language="c#" AutoEventWireup="true" Inherits="Telerik.Web.Examples.Dock.RenderModes.DefaultCS"CodeFile="DefaultCS.aspx.cs"  %>

<%@ Register TagPrefix="qsf" Namespace="Telerik.QuickStart" %>
<%@ Register Src="~/Dock/Common/TelerikNewsCS.ascx" TagName="News" TagPrefix="uc2" %>
<%@ Register Src="~/Dock/Common/TelerikBlogsCS.ascx" TagName="Blogs" TagPrefix="uc2" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "">
<html xmlns=''>
<head runat="server">
    <title>Telerik ASP.NET Example</title>
    <link href="styles.css" rel="stylesheet" />
    <form id="form1" runat="server">
    <telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
    <telerik:RadSkinManager ID="RadSkinManager1" runat="server" ShowChooser="true" />
    <div class="demo-container size-wide">
        <telerik:RadDockLayout runat="server" ID="RadDockLayout1">
                    <td style="vertical-align: top">
                        <telerik:RadDockZone ID="RadDockZone2" runat="server" Orientation="Vertical" Width="250px"
                            <telerik:RadDock RenderMode="Lightweight" ID="RadDock1" runat="server" Title="Blogs" Width="250px" EnableAnimation="true"
                                EnableRoundedCorners="true" Resizable="true" CssClass="higherZIndex">
                                    <uc2:Blogs ID="BlogsControl" runat="server"></uc2:Blogs>
                    <td style="vertical-align: top">
                        <telerik:RadDockZone ID="RadDockZone1" runat="server" Orientation="Vertical" Width="520px"
                            <telerik:RadDock RenderMode="Lightweight" ID="RadDock2" runat="server" Title="News" Width="250px" EnableAnimation="true"
                                EnableRoundedCorners="true" Resizable="true" CssClass="higherZIndex">
                                    <uc2:News ID="NewsControl" runat="server"></uc2:News>
    <qsf:ConfiguratorPanel ID="ConfigurationPanel1" runat="server" Title="Render mode comparison">
                <qsf:ConfiguratorColumn runat="server" Size="Narrow" Title="Render mode">
                    <qsf:RadioButtonList ID="cbChooseRenderMode" runat="server" AutoPostBack="True"
                        CssClass="fb-group" RepeatLayout="UnorderedList">
                        <asp:ListItem Value="Classic" Selected="True">Classic</asp:ListItem>
                        <asp:ListItem Value="Lightweight">Lightweight</asp:ListItem>
                <qsf:ConfiguratorColumn runat="server" Size="Wide" Title="Classic vs. Light rendering">
                    <table class="table" cellspacing="0">
                                <th>Markup Size</th>
                                    <asp:Label ID="ClassicSize" runat="server"></asp:Label>
                                    <asp:Label ID="LightweightSize" runat="server"></asp:Label>
                                <th>CSS Size</th>
                                <td>7.2 KB</td>
                                <td>5.03 KB</td>
                                <th>Image Sprite Size *</th>
                                <td>4.13 KB</td>
                                <td>17.04 KB</td>



Find Assistance

Help Us Improve

Was this example helpful?