Skip to main content

Global Resources

  • 5 minutes to read


In v12.1 and higher, we recommend that you localize your application with the Satellite Resource Assemblies. This technique is more modern and allows you to get the most recent string translations.

This topic describes the native ASP.NET localization technique and contains download links to localized resources for DevExpress ASP.NET controls.

You can download default and translated resources from the following link:

Download: v23.1(2023_07_17)

Note that the downloaded file contains translations that are relevant as of July 17, 2023. These translations were generated by the DevExpress developer community. You should verify accuracy before incorporating resources into your software project.

Resource Files

A resource file is an XML file that contains strings that can be translated into different languages. Resource files in ASP.NET have a .resx extension. Each localized resource file contains name/value pairs. You can use a text editor to customize a resource file’s string values.


Refer to the following topic in the Visual Studio documentation to learn more about global resource files: ASP.NET Web Page Resources Overview.

DevExpress ASP.NET products ship with a default resource file and numerous localized resource files (one for each culture).

List of default resource files


Default Resource File

Card View


Data and Image Navigation


Data Editors




Docking and Popups




Grid View


File Management


HTML Editor


Multi-Use Site Controls


Pivot Grid




Rich Text Editor




Site Navigation and Layout


Spell Checker




Tree List


Vertical Grid


A localized resource file name consists of the corresponding default name and a culture name, such as the following:

  • DevExpress_Web_v23.1.resx - the default resource file for DevExpress ASP.NET controls.
  • - a resource file for the German localization of DevExpress ASP.NET controls.

DevExpress curates resources for the following cultures: English (en) (default), German (de), Japanese (ja), and Spanish (es).

Resources for other cultures are generated by the DevExpress developer community. You should verify accuracy before incorporating resources into your software project.

List of available cultures

Chinese (Simplified) [zh-CHS] (prior v12.1 - see “zh-Hans” vs “zh-CHS” and “zh-Hant” vs “zh-CHT”)
Chinese [zh-Hans] v12.1+
Chinese [zh-Hant] v12.1+
Croatian [hr]
Czech [cs]
Danish [da]
Dutch - The Netherlands [nl]
French [fr]
German [de]
Greek [el]
Hungarian [hu]
Italian [it]
Japanese [ja] v11.1+
Norwegian [no]
Polish [pl]
Portuguese (Brazil) [pt-BR]
Portuguese (Portugal) [pt-PT]
Romanian [ro]
Russian [ru]
Slovak [sk] v12.1+
Slovenian [sl]
Spanish [es]
Swedish [sv] v11.2+
Turkish [tr] v14.2+

Add Global Resources to an Application

Copy localized and corresponding default resource files to the App_GlobalResources folder.


Note that if the App_GlobalResources folder contains only a localized resource file (, without the corresponding default resource file (DevExpress_Web_v23.1.resx), an exception will occur.

Set an Application Culture

An application culture is defined by the Culture and UICulture properties. You can specify them in the following ways.

Localize an Application for a Specific Culture (regardless of operating system settings)

Set the Culture and UICulture properties to a certain culture ID. You can specify the properties at design time or runtime.

Design Time

  • To set the culture for all pages, add the globalization element to the Web.config file. Set the Culture and uiCulture attributes.

        <globalization uiCulture="es" culture="es" />
  • To set the culture for an individual page, set the Culture and UICulture attributes of the @ Page directive.

    <%@ Page UICulture="es" Culture="es" %>


Override the InitializeCulture() method to specify the Culture and UICulture properties for the page.

protected override void InitializeCulture() {
     var lang = Request.QueryString["lang"];
     if (!string.IsNullOrEmpty(lang)) {
          Culture = lang;
          UICulture = lang;
<style type="text/css">
          text-decoration: none;
<a class="lang-btn" href="Default.aspx?lang=en">
     <img src="Images/english.png" alt="English" />
<a class="lang-btn" href="Default.aspx?lang=de">
     <img src="Images/german.png" alt="Deutsch" />
<a class="lang-btn" href="Default.aspx?lang=es">
     <img src="Images/spanish.png" alt="Spanish" />

<dx:ASPxGridView ID="ASPxGridView1" ...

The animation below shows the result.


Localize an Application for Numerous Cultures (based on operating system settings)

  • Provide multiple localization sources within your application for each culture to support.
  • Set the Culture and UICulture properties to auto.

The application automatically determines the operating system’s culture information and loads the appropriate assemblies for this culture. You can set the Culture and UICulture properties in any of the ways described above.

<%@ Page UICulture="auto" Culture="auto" %>

Create Culture-Independent Settings in an Application

You can specify culture-independent settings in your application. For instance, always show currency in euros. To change settings without changing the current culture, follow the steps below:

  1. Clone current CultureInfo.
  2. Change settings of the new CultureInfo object. Note that it is possible to copy settings from another culture instead of setting them manually.
  3. Assign the new CultureInfo object to CurrentCulture and CurrentUICulture properties.
protected void Page_Init(object sender, EventArgs e) {  
    CultureInfo newCulture = (CultureInfo)CultureInfo.CurrentCulture.Clone();

    // Use the dot symbol as a thousand separator
    newCulture.NumberFormat.NumberGroupSeparator = ".";
    // Use the comma symbol as a decimal separator
    newCulture.NumberFormat.NumberDecimalSeparator = ",";
    // Show currency in euros
    newCulture.NumberFormat.CurrencySymbol = "€";
    // Copy date-time format from the en-us culture
    newCulture.DateTimeFormat = new CultureInfo("En-US").DateTimeFormat;

    System.Threading.Thread.CurrentThread.CurrentCulture = newCulture;
    System.Threading.Thread.CurrentThread.CurrentUICulture = newCulture;