次の方法で共有


x:Uid ディレクティブ

マークアップ要素の一意識別子を提供します。 多くのシナリオでは、この一意識別子は XAML ローカライズ プロセスとツールによって使用されます。

XAML 属性の使用法

<object x:Uid="identifier"... />

XAML 値

価値 形容
identifier x:Uid コンシューマーによって解釈されるときに、ファイル内で一意である必要がある手動で作成または自動生成された文字列。

備考

[MS-XAML] では、x:Uid はディレクティブとして定義されます。 詳細については、「[MS-XAML] セクション 7.3.6を参照してください。

x:Uid は、指定された XAML ローカリゼーション シナリオと、ローカライズに使用される識別子が x:Nameのプログラミング モデルへの影響に依存しないため、x:Name とは異なります。 また、x:Name は XAML 名前スコープによって管理されます。ただし、x:Uid は、XAML 言語で定義された一意性の適用の概念によって制御されません。 広い意味での XAML プロセッサ (ローカライズ プロセスの一部ではないプロセッサ) では、x:Uid 値の一意性は強制されません。 この責任は、概念的には値の発信元に対して行われます。 1 つの XAML ソース内での x:Uid 値の一意性の期待は、専用のグローバリゼーション プロセスやツールなどの値のコンシューマーにとって妥当です。 一般的な一意性モデルは、x:Uid 値が XAML を表す XML エンコード ファイル内で一意であるということです。

特定の XAML スキーマに関する重要な知識を持つツールは、マークアップでテキスト文字列値が検出されるすべての場合ではなく、実際のローカライズ可能な文字列に対してのみ x:Uid を適用することを選択できます。

フレームワークでは、定義する型に属性 UidPropertyAttribute を適用することで、オブジェクト モデル内の特定のプロパティを x:Uid のエイリアスとして指定できます。 フレームワークが特定のプロパティを指定する場合、同じオブジェクトに対して x:Uid とエイリアス化されたメンバーの両方を指定することはできません。 x:Uid とエイリアス化されたメンバーの両方が指定されている場合、.NET XAML Services API は通常、このケースの XamlDuplicateMemberException をスローします。

WPF の使用に関する注意事項

WPF ローカライズ プロセスおよび XAML の BAML 形式での の役割の詳細については、「WPF または のグローバリゼーション 」を参照してください。

関連項目