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
  • Localizing the UI
  • Localizing the System
  • Built-in Formats
  • Localizing Resources
  • Detecting/Switching Browser Language

Was this helpful?

Export as PDF
  1. Concepts

Localization

PreviousModal WorkflowNextRightToLeft

Last updated 3 months ago

Was this helpful?

Wisej.NET fully supports localization using .NET and Visual Studio standard localization features.

{% file src="../.gitbook/assets/wisej.localization.zip" caption="Download Wisej.Localization.zip" %}

Localizing the UI

All top-level controls in Wisej.NET support UI localization.

To enable localization features for a Form, Page, UserControl, or Desktop component:

  1. In design mode, set the Localizable property to true

  2. Once enabled, you can switch languages in the designer

Use the Language dropdown property to select the language for localization:

UI localization allows changing multiple properties per language switch, commonly:

  • Size

  • Location

  • Text

  • Colors

  • Images

Localizing the System

Wisej.NET supports full localization of system resources including:

  • MessageBox buttons

  • Calendar control labels (month/day names)

  • Standard numeric, percentage and currency formatting/parsing

Built-in Formats

  • Numeric, Percentage, Date, and Currency

    Handled automatically for all supported languages worldwide.

  • Date Labels: Months and Day Names

    Handled automatically for all supported languages worldwide.

  • System Resources

    Wisej.NET system resources are localized in:

    • English

    • German

    • French

    • Italian

    • Turkish

    • Spanish

    • Portuguese

    For other languages, create a Resources-[LANG].resx file in either:

    • Root project folder

    • /Resources folder

    Label
    Description
    Default Value

    $Ok

    OK Button in MessageBox/system dialogs

    OK

    $Cancel

    Cancel Button in MessageBox/system dialogs

    Cancel

    $Yes

    Yes Button in MessageBox/system dialogs

    Yes

    $No

    No Button in MessageBox/system dialogs

    No

    $Retry

    Retry Button in MessageBox/system dialogs

    Retry

    $Ignore

    Ignore Button in MessageBox/system dialogs

    Ignore

    $Abort

    Abort Button in MessageBox/system dialogs

    Abort

    $Next year

    Next-year navigation tooltip in calendar controls

    Next Year

    $Next month

    Next-month navigation tooltip in calendar controls

    Next Month

    $Last year

    Last-year navigation tooltip in calendar controls

    Last Year

    $Last month

    Last-month navigation tooltip in calendar controls

    Last Month

    $Offline

    Offline connectivity loss notification

    Offline

Localizing Resources

Beyond system localization, you'll likely need to localize application resources (strings, images, etc.).

var RS = new ResourceManager("Localization.Resources", this.GetType().Assembly);
var title = RS.GetString("Title");
Dim RS as ResourceManager = new ResourceManager("Localization.Resources", Me.GetType().Assembly)
Dim title as String = RS.GetString("Title")

Detecting/Switching Browser Language

Wisej.NET automatically detects browser language and switches application/system resources accordingly.

You can force a specific language for the application (user session) by:

  1. Using one of these methods:

    • Assign Application.CurrentCulture property

    • Add lang URL parameter (e.g., http://localhost/myapp?lang=de for German)

When current culture changes from the session's initial culture, Wisej.NET raises the Application.CultureChanged event.

Designer-localized controls update only at creation. No built-in mechanism exists to change already-created controls. To update existing controls either:

  • Re-create the container and call InitializeControl

  • Write custom code to reapply resources

Add localization labels as needed. See .

Create .resx files as needed using the approach above. See .

Use the class to retrieve localized values. Wisej.NET handles thread culture switching for client requests.

Setting the culture property in Default.json (default is "auto"). See .

How to: Create a Localized Resource File
How to: Create a Localized Resource File
ResourceManager
Configuration
Language selection dropdown