CultureTypes Enumeration
Defines the types of culture lists that can be retrieved using the CultureInfo::GetCultures method.
This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.
Namespace: System.GlobalizationAssembly: mscorlib (in mscorlib.dll)
| Member name | Description | |
|---|---|---|
![]() | NeutralCultures | Cultures that are associated with a language but are not specific to a country/region. The names of .NET Framework cultures consist of the lowercase two-letter code derived from ISO 639-1. For example: "en" (English) is a neutral culture. Custom cultures can have any user-specified name, not just a two-letter code. The invariant culture is included in the array of cultures returned by the CultureInfo::GetCultures method that specifies this value. |
![]() | SpecificCultures | Cultures that are specific to a country/region. The names of these cultures follow RFC 4646 (Windows Vista and later). The format is "<languagecode2>-<country/regioncode2>", where <languagecode2> is a lowercase two-letter code derived from ISO 639-1 and <country/regioncode2> is an uppercase two-letter code derived from ISO 3166. For example, "en-US" for English (United States) is a specific culture. Custom cultures can have any user-specified name, not just a standard-compliant name. |
![]() | InstalledWin32Cultures | All cultures that are installed in the Windows operating system. Note that not all cultures supported by the .NET Framework are installed in the operating system. |
![]() | AllCultures | All cultures that ship with the .NET Framework, including neutral and specific cultures, cultures installed in the Windows operating system, and custom cultures created by the user. |
| UserCustomCulture | Custom cultures created by the user. | |
| ReplacementCultures | Custom cultures created by the user that replace cultures shipped with the .NET Framework. | |
| WindowsOnlyCultures | Obsolete. This member is deprecated; the default behavior is set to return an empty list for backward compatibility reasons. | |
| FrameworkCultures | Obsolete. This member is deprecated; using this value with CultureInfo::GetCultures returns neutral and specific cultures shipped with the previous .NET Framework. |
These culture type values are returned by the CultureInfo::CultureTypes property, and also serve as a filter that limits the cultures returned by the CultureInfo::GetCultures method. For more information on cultures, see CultureInfo.
Generally, your application should enumerate all cultures, using the AllCultures value. This allows enumeration of custom cultures, as well as the other culture types.
Note that the FrameworkCultures and WindowsOnlyCultures members have been deprecated.
The following example demonstrates the CultureTypes enumeration and the CultureTypes property.
// This example demonstrates the CultureTypes enumeration // and the CultureInfo.CultureTypes property. using namespace System; using namespace System::Globalization; int main() { // Create a table of most culture types. array<CultureTypes>^ mostCultureTypes = gcnew array<CultureTypes> { CultureTypes::NeutralCultures, CultureTypes::SpecificCultures, CultureTypes::InstalledWin32Cultures, CultureTypes::UserCustomCulture, CultureTypes::ReplacementCultures, CultureTypes::FrameworkCultures, CultureTypes::WindowsOnlyCultures }; CultureTypes combo; // Get and enumerate all cultures. System::Collections::IEnumerator^ enum0 = CultureInfo::GetCultures(CultureTypes::AllCultures)->GetEnumerator(); while (enum0->MoveNext()) { // Display the name of each culture. CultureInfo^ ci = safe_cast<CultureInfo^>(enum0->Current); Console::WriteLine("Culture: {0}", ci->Name); // Get the culture types of each culture. combo = ci->CultureTypes; // Display the name of each culture type flag that is set. Console::Write(" "); for each (CultureTypes ct in mostCultureTypes) if ((ct & combo) != CultureTypes()) Console::Write("{0} ", ct); Console::WriteLine(); } } /* The following is a portion of the results produced by this code example. . . . Culture: tg NeutralCultures InstalledWin32Cultures Culture: ta NeutralCultures InstalledWin32Cultures FrameworkCultures Culture: te NeutralCultures InstalledWin32Cultures FrameworkCultures Culture: syr NeutralCultures InstalledWin32Cultures FrameworkCultures Culture: tg-Cyrl-TJ SpecificCultures InstalledWin32Cultures Culture: ta-IN SpecificCultures InstalledWin32Cultures FrameworkCultures Culture: te-IN SpecificCultures InstalledWin32Cultures FrameworkCultures Culture: syr-SY SpecificCultures InstalledWin32Cultures FrameworkCultures Culture: tg-Cyrl NeutralCultures InstalledWin32Cultures . . . */
The following example displays several properties of the neutral cultures.
using namespace System; using namespace System::Globalization; int main() { // Displays several properties of the neutral cultures. Console::WriteLine( "CULTURE ISO ISO WIN DISPLAYNAME ENGLISHNAME" ); System::Collections::IEnumerator^ enum0 = CultureInfo::GetCultures( CultureTypes::NeutralCultures )->GetEnumerator(); while ( enum0->MoveNext() ) { CultureInfo^ ci = safe_cast<CultureInfo^>(enum0->Current); Console::Write( "{0,-7}", ci->Name ); Console::Write( " {0,-3}", ci->TwoLetterISOLanguageName ); Console::Write( " {0,-3}", ci->ThreeLetterISOLanguageName ); Console::Write( " {0,-3}", ci->ThreeLetterWindowsLanguageName ); Console::Write( " {0,-40}", ci->DisplayName ); Console::WriteLine( " {0,-40}", ci->EnglishName ); } } /* This code produces the following output. This output has been cropped for brevity. CULTURE ISO ISO WIN DISPLAYNAME ENGLISHNAME ar ar ara ARA Arabic Arabic bg bg bul BGR Bulgarian Bulgarian ca ca cat CAT Catalan Catalan zh-Hans zh zho CHS Chinese (Simplified) Chinese (Simplified) cs cs ces CSY Czech Czech da da dan DAN Danish Danish de de deu DEU German German el el ell ELL Greek Greek en en eng ENU English English es es spa ESP Spanish Spanish fi fi fin FIN Finnish Finnish zh zh zho CHS Chinese Chinese zh-Hant zh zho CHT Chinese (Traditional) Chinese (Traditional) zh-CHS zh zho CHS Chinese (Simplified) Legacy Chinese (Simplified) Legacy zh-CHT zh zho CHT Chinese (Traditional) Legacy Chinese (Traditional) Legacy */
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
