Files
docs-desktop/dotnet-desktop-guide/xaml-services/xml-language-handling.md
T
Pooja PoojariandAndy De George 692293bda8 US 1889327: Updated H2 and column headers. (#1326)
* Updated H2 and column headers.

* Metadata update.

* Minor edits.

* Apply suggestions from code review

Co-authored-by: Andy (Steve) De George <[email protected]>
2022-03-07 21:22:00 +00:00

2.9 KiB

title, description, ms.date, ms.custom, helpviewer_keywords, ms.assetid
title description ms.date ms.custom helpviewer_keywords ms.assetid
xml:lang Handling in XAML Learn about the xml:lang Handling in XAML. 03/30/2017 devdivchpfy22
XAML [XAML Services], xml:lang attribute
xml:lang attribute [XAML Services]
RFC 3066 standard [XAML Services]
standards [XAML Services], RFC 3066
7aac0078-a1c5-41f8-b8b0-975510d9dca0

xml:lang Handling in XAML

The xml:lang attribute is an XML-defined attribute that declares the language and culture information for an element in XML. This same meaning of the attribute persists in XAML; however, some additional considerations apply.

XAML Attribute Usage

<object xml:lang="rfc3066lang" />

XAML Values

Value Description
rfc3066lang A string that is derived from the RFC 3066 standard and identifies either a language or a language-region. When it is the latter, the language and region are separated by a single hyphen. See xref:System.Windows.Markup.XmlLanguage for more information about the values and format.

Remarks

The definition for the xml:lang attribute in [!INCLUDETLA2#tla_xaml] is derived from xml:lang as defined as a "special attribute" by the World Wide Web Consortium (W3C) for XML. Language and culture information is potentially processed in different ways by elements, depending on their implementations; however, there is no default [!INCLUDETLA2#tla_xaml] processing of the xml:lang attribute.

The default value of the xml:lang attribute is an empty string at the attribute level.

The xml:lang attribute effects and the value of the attribute are generally perpetuated to child elements, when interpreted by systems that act on xml:lang values.

When interpreted by XAML writers of .NET XAML Services, an xml:lang value can create xref:System.Windows.Markup.XmlLanguage or xref:System.Globalization.CultureInfo objects in the underlying object representation; however, that behavior depends on whether the value specified for xml:lang is a valid construction for those classes.

Frameworks can create associations between framework-defined properties and the meaning of xml:lang in XML by applying xref:System.Windows.Markup.XmlLangPropertyAttribute to the property.

WPF Usage Nodes

For elements that are derived classes of xref:System.Windows.FrameworkElement or xref:System.Windows.FrameworkContentElement, you can use the equivalent xref:System.Windows.FrameworkElement.Language%2A dependency property instead of the xml:lang attribute. By default, the xref:System.Windows.FrameworkElement.Language%2A property uses "en-US" if it is not otherwise set, either through the property or through processing the xml:lang attribute.

See also