Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Collapse]WinForms Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Build an Application
 [Collapse]Controls and Libraries
  [Expand]Forms and User Controls
  [Expand]Messages, Notifications and Dialogs
  [Expand]Editors and Simple Controls
  [Expand]Ribbon, Bars and Menu
  [Expand]Application UI Manager
  [Expand]Docking Library
  [Expand]Data Grid
  [Expand]Vertical Grid
  [Expand]Pivot Grid
  [Expand]Tree List
  [Expand]Chart Control
  [Expand]Diagrams
  [Expand]Gauges
  [Expand]Map Control
  [Expand]Scheduler
  [Expand]Spreadsheet
  [Expand]Rich Text Editor
  [Expand]Spell Checker
  [Collapse]Form Layout Managers
    Side Panel
   [Collapse]Layout Manager
    [Expand]Product Information
    [Expand]Getting Started
    [Expand]Layout Control
    [Expand]Data Layout Control
    [Expand]Layout Item
    [Expand]Layout Groups
    [Expand]Tabbed Group
    [Expand]Other Layout Elements
    [Collapse]Customization Capabilities
      Design-Time Customization
      Design-Time Actions: Adding and Removing Controls and Layout Items
      Design-Time Actions: Resizing and Moving Layout Items
      Design-Time Actions: Selecting Controls and Layout Items
      Context Menu
      Customization Form
      Runtime Undo/Redo
      Creating Layout Items at Design Time
      Creating Tabbed Groups at Design Time
      Design-Time Layout Templates
      Dragging Layout Items at Design Time
      Layout Tree View
      Selecting Layout Items at Design Time
      Runtime Customization Overview
      Default Runtime Customization
      Quick Runtime Customization
    [Expand]Size and Alignment
     Flow Layout
     Table Layout
     Focus Management
    [Expand]Appearance and Look and Feel
    [Expand]Miscellaneous
    [Expand]Examples
    [Expand]Member Tables
   [Expand]Tabbed MDI Manager
    Tab Control
   [Expand]Wizard Control
    Workspace Manager
  [Expand]Navigation Controls
  [Expand]Printing-Exporting
  [Expand]PDF Viewer
   Reporting
  [Expand]Snap
  [Expand]TreeMap Control
 [Expand]Common Features
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

Runtime Customization Overview

When an application starts, controls within the LayoutControl are arranged using a default layout. End-users, however, are not restricted to this layout, as layouts are fully customizable at runtime. For instance, end-users can temporarily hide specific layout items and their controls, rearrange and resize them, etc. This topic introduces common methods that allow end-users to customize the layout of controls at runtime.

Expanded Customization Modes

The LayoutControl supports default and quick customization modes, and you can switch between them by setting the LayoutControl.CustomizationMode property to Quick or Default.

The LayoutControl.AllowCustomization property sets the capability of runtime customization for end-users. By default, this property is set to true, but you can disable runtime LayoutControl modifications by setting this property to false. It is possible to prevent the runtime modification of a specific layout group. To do this, set the group's LayoutItemContainer.AllowCustomizeChildren property to false.

The LayoutControl.OptionsCustomizationForm property contains settings that specify the customization mode capabilities (visibility of specific buttons, quick mode activation time, etc).

Expanded Saving and Restoring the Layout

Changes in the layout that are made by end-users at runtime are not automatically saved between application runs. After the LayoutControl is destroyed, for instance, when a form is closed, all the end-user's changes are lost. The solution that allows you to resolve this problem is to save the layout manually when the application closes and restore the saved layout when the application starts. This example demonstrates how to do this.

In this example, the layout will be stored in an XML file, so the LayoutControl.SaveLayoutToXml and LayoutControl.RestoreLayoutFromXml methods will be used. A list of all the methods for saving and loading the layout can be found in the Member Table: Save and Restore Layout topic.

Expanded See Also

How would you rate this topic?​​​​​​​