XAML における xml:lang の処理

xml:lang 属性は XML の定義済み属性の 1 つであり、XML の要素の言語およびカルチャ情報を宣言します。 属性の意味は XAML でも同じですが、いくつかの追加の考慮事項が適用されます。

XAML 属性の使用方法

<object xml:lang="rfc3066lang" />

XAML 値

説明
rfc3066lang RFC 3066 標準で定義されている文字列。1 つの言語、または言語と地域を表します。 後者の場合は、言語と地域が 1 つのハイフンで区切られます。 値と形式の詳細については、「 XmlLanguage 」を参照してください。

解説

XAML における xml:lang 属性の定義は、World Wide Web コンソーシアム (W3C) によって XML の "特別な属性" として定義された xml:lang から派生したものです。 言語およびカルチャ情報が要素によって処理される方法は、実装に応じて異なる可能性がありますが、xml:lang 属性の既定の XAML 処理というものは存在しません。

xml:lang 属性の既定値は、属性レベルで空の文字列です。

xml:lang 属性の効果と属性の値が、 xml:lang 値を処理するシステムによって解釈される場合、これらの効果と値は、通常、子要素に反映されます。

.NET XAML サービスの XAML ライターによって解釈される場合、xml:lang 値によって、基になるオブジェクト表現に XmlLanguage オブジェクトや CultureInfo オブジェクトが作成される可能性があります。ただし、この動作は、xml:lang に指定されている値が、それらのクラスを構築するための入力として有効であるかどうかに依存します。

フレームワークは、 xml:lang をプロパティに適用することによって、フレームワーク定義プロパティと XML 内の XmlLangPropertyAttribute の意味を関連付けることができます。

WPF の使用上の注意

要素が FrameworkElement または FrameworkContentElementの派生クラスの場合は、 Language 属性の代わりに、同等の xml:lang 依存関係プロパティを使用できます。 別途設定されない限り、 Language プロパティの値は既定で "en-US" となります。このプロパティの値は、このプロパティを通して、または xml:lang 属性を処理することによって設定されます。

関連項目