2016-06-23 8 views
0

多くの異なる言語で同じプロジェクトのバリエーションを実装する必要があり、一部のページでCalendarDatePickerオブジェクトを使用しています。私は起動時にダウンロードされたiniファイルによって与えられたプロパティに応じて言語を設定する必要があります。バインドCalendarDatePicker.LanguageプロパティException.HResult 0x800F0904

私はこのようにその値をバインドしようとしている:

<CalendarDatePicker x:Name="datePicker"        
        Language="{Binding LanguageINI}"/> 

しかし、私はこの例外を取得:0x800F0904を。

CalendarDatePicker完全にカスタマイズされているので、コードを使用して設定しようとしましたが、CalendarViewスタイルのプロパティも設定する必要があります。それを達成する方法。

Thx much!

+0

"LanguageINI"値を含むデータコンテキストを投稿できますか? –

答えて

0

私の側で問題を再現できます。 BindingLanguageプロパティを使用すると、次のエラーが発生します。 HRESULTから

例外:0x800F0904

このエラーは、XAMLデザイナで与えられます。あなたのコードをデバッグする場合は、次のように読みやすく例外が発生します:
enter image description here

型「Windows.UI.Xaml.Markup.XamlParseException」の例外がUWP.exeで発生したが、いませんでしたユーザーコードで処理されました

WinRT情報:プロパティ 'Windows.UI.Xaml.FrameworkElement.Language'に割り当てられませんでした。 [行:45位置:68]

この問題を回避するには、{X:Bind}を試してみてください。

ただし、Languageプロパティを設定することもできますが、それはまた、表示に使用される言語CalendarDatePickerには影響しません。 CalendarDatePickerは、デフォルトでグローバリゼーションとローカリゼーションをサポートしています。自動的にシステムのデフォルト言語を使用してUIを表示します。

iniファイルによって指定されたプロパティに応じて、アプリケーションの言語を設定する場合。

Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "zh-CN"; 

PrimaryLanguageOverrideは、ユーザーが自分の独立した言語の選択肢を与えるアプリケーションの設定の単純なオーバーライドがある:あなたはApplicationLanguages.PrimaryLanguageOverride propertyのように使用することができます。アプリの使用言語が変更され、CalendarDatePickerが自動的にこの言語を使用して表示されます。

関連する問題