LogoLogo
HomeNewsSupportVideos
  • Introduction
  • Getting Started
  • What's new in 4.0
    • Known Issues
    • .NET Core Designer
    • Managed Graphics
    • Fluent Markup
    • Markdown Support
    • Upgrade from 3.x
  • Releases
    • What's new in 4.0
    • What's new in 3.5
    • What's new in 3.2
      • View Builder
      • Validation Rules
      • Enhanced Font Support
      • Design-Time Debug
    • What's new in 3.1
    • What's new in 3.0
      • FAQs
      • Update Existing Projects
      • Multi Targeting
      • Visual Studio Designer
      • Referencing Assemblies
      • Docker Support
      • Troubleshooting
      • Deployment
    • What's new in 2.5
    • What's new in 2.2
    • What's new in 2.1
    • What's new in 2.0
    • Upgrade from 1.x
  • Getting Started
    • New Project
    • Templates
    • Troubleshooting
    • License Activation
    • FAQ
    • API
    • Hybrid
    • Deployment
    • Theme Builder
  • Concepts
    • Startup
    • Configuration
    • Load Balancing
    • Designer
    • Layouts
    • Client Profiles
    • Tab Order
    • Compression
    • Embedded Resources
    • Modal Workflow
    • Localization
    • RightToLeft
    • Background Tasks
    • Real Time Web Applications
    • JavaScript
    • JavaScript Object Model
    • Security
    • Synchronization
    • Session Management
    • Theming
    • Dependency Injection
    • Application Switches
    • Visual Studio Code
  • Controls & Components
    • General
      • Application
      • AutoSizing
      • AutoScroll
      • AutoScaling
      • Accessibility
      • Colors & Fonts
      • Embedded Tools
      • Events
      • Touch Events
      • Images
      • Labels
      • ToolTips
      • Data Binding
      • Common Properties
      • Custom Painting
      • Move & Resize
      • Drag & Drop
      • Validation
      • User Data
      • Responsive Properties
      • VB.NET Extensions
    • Common Dialogs
      • FolderBrowserDialog
      • ColorDialog
      • OpenFileDialog
      • SaveFileDialog
    • Editors
      • TextBox
        • TagTextBox
        • MaskedTextBox
        • TypedTextBox
      • DateTimePicker
      • MonthCalendar
      • TimeUpDown
      • DomainUpDown
      • NumericUpDown
      • TrackBar
    • Buttons
      • Button
      • SplitButton
      • CheckBox
      • RadioButton
    • Containers
      • Page
      • Form
      • Desktop
      • Panel
      • FlexLayoutPanel
      • FlowLayoutPanel
      • TableLayoutPanel
      • GroupBox
      • Accordion
      • TabControl
      • UserPopup
      • UserControl
      • ToolBar
      • StatusBar
      • SplitContainer
      • SlideBar
    • Lists & Grids
      • ComboBox
        • UserComboBox
        • TreeViewComboBox
        • ListViewComboBox
      • ListBox
        • CheckedListBox
      • TreeView
      • ListView
      • DataGridView
        • Column
        • TextBoxColumn
        • ButtonColumn
        • LinkColumn
        • ImageColumn
        • MaskedTextBoxColumn
        • DateTimePickerColumn
        • NumericUpDownColumn
        • CheckBoxColumn
        • ComboBoxColumn
      • DataRepeater
      • PropertyGrid
    • Extenders
      • Animation
      • ToolTip
      • ErrorProvider
      • Rotation
      • StyleSheet
      • JavaScript
    • Media
      • Audio
      • Video
      • FlashPlayer
    • Content
      • Label
      • LinkLabel
      • PictureBox
      • ScrollBars
      • Upload
      • AspNetPanel
      • ImageList
      • PdfViewer
      • ProgressBar
      • Spacer
      • Widget
      • WebBrowser
      • IFramePanel
      • HtmlPanel
      • Canvas
      • Shape
      • Line
    • Menus
      • MainMenu
      • MenuBar
      • MenuItem
      • LinkMenuItem
      • ContextMenu
    • Notifications
      • AlertBox
      • MessageBox
      • Toast
    • Other Components
      • Timer
      • BindingSource
      • BindingNavigator
      • DataSet
      • EventLog
      • MessageQueue
      • PerformanceCounter
Powered by GitBook
On this page
  • RightToLeft Property
  • RightToLeftLayout Property
  • Application.RightToLeft Property
  • Themes

Was this helpful?

Export as PDF
  1. Concepts

RightToLeft

PreviousLocalizationNextBackground Tasks

Last updated 3 months ago

Was this helpful?

Wisej.NET supports Right-to-Left and Right-to-Left-Layout (mirroring) quite extensively in most controls, in the themes, in the , and in the designer.

The following controls do not fully support RightToLeft at the moment: DataGridView, ListView, PropertyGrid.

RightToLeft Property

The property makes a control adapt its internal layout and alignment for right-to-left languages. The default value is Inherit, which works in most cases. However, an application can:

  • Force a control to ignore right-to-left mode by setting the value to No

  • Force right-to-left mode by setting the value to Yes

This property is localizable.

RightToLeftLayout Property

The property mirrors the horizontal position of a container's direct children. The default value is false.

When set to true, horizontal layout is mirrored only when resolves to Yes.

Set this property to:

  • false to prevent Wisej.NET from mirroring layout in right-to-left mode

  • true to mirror horizontal location of direct children in right-to-left mode

This property is localizable.

Application.RightToLeft Property

  • Can be forced to true or false programmatically

Themes

All Wisej.NET themes support RightToLeft mode with minimal required changes. When a widget operates in right-to-left mode, it has the "rightToLeft" state allowing theme adaptation.

Most cases need no changes. Typical right-to-left adjustments include:

  • Mirroring icons

  • Switching single side border location

Example of mirroring icons with a state style:

"rightToLeft":
{
  "styles":
  {
    "transform": "scale(-1, 1)"
  }
},

TreeView arrows requiring 45-degree rotation when expanded and mirroring can adapt using these states:

"rightToLeft":
{
  "styles":
  {
    "transform": "rotateZ(180deg)"
  }
},
"opened-rightToLeft":
{
  "styles":
  {
    "transform": "rotateZ(135deg)"
  }
},

The composite state "opened-rightToLeft" qualifies styles and properties only when the widget has both states set simultaneously.

takes its value from:

The "rightToLeft" setting

The default value of is Inherit, meaning a control inherits the value from its parent. Top-level containers and parentless controls with RightToLeft set to Inherit take their value from .

Theme Builder
RightToLeft
RightToLeftLayout
RightToLeft
Application.RightToLeft
Configuration
Control.RightToLeft
Application.RightToLeft