アプリケーションで 24 時間形式の日付を使用しようとしていますが、xaml のバインドが 12 時間形式に戻ってしまうという問題が発生します。
UI が表示される前に、CultureInfo
HH:mm および HH:mm:ss を Short および Long Time 形式としてオブジェクトを更新します。
次に、UI でDateTime
、バインディングに FormatString を使用してオブジェクトにバインドします。
<TextBlock Text="{Binding TimeTest, StringFormat=t}" />
私の予想では、17:33 と表示されますが、最終的には午後 5:33 と表示されます。私たちが見つけた回避策は、現在のカルチャを渡すことですが、時間を使用する可能性のあるすべてのバインディングでこれを行う必要は避けたいと考えています。
<TextBlock Text="{Binding Date, StringFormat=t, ConverterCulture={x:Static gl:CultureInfo.CurrentCulture}}" />