1

私はこれの上に私の髪の残りがほとんどないものを引き裂き始める準備ができています。

私はWindows7でwinformsアプリケーション(.NET 3.5)に取り組んでいます。このアプリケーションには、実際の日付の選択にMonthCalendarを使用するカスタムの日付ピッカーコントロールがあります。下部に表示されている「今日」の日付を除いて、機能していて見栄えがします。横に「今日」というラベルが付いています。聴衆が英語を母国語とする場合、これは問題ありません。私のはデンマーク人です。

カルチャがデンマーク語に設定されている場合、「今日」のラベルは変更されませんが、週と月の名前と日付の形式は関連するウィンドウの設定に従います。それはマイナーな微笑ですが、それでも厄介なものです。

他の誰かがこれを見たことがありますか?誰かが私が間違っていることを知っていますか?それができない場合、回避策を知っている人はいますか?

4

2 に答える 2

2

デンマークの顧客は、デンマーク語バージョンのWindowsを実行します。これは「今日」にデンマーク語のテキストを使用しています。マシンのカルチャを変更しても、MonthCalendarで使用されるようなネイティブWindowsリソースの言語は変更されません。

したがって、これは実際の問題ではありません。たとえばスクリーンショットのように本物のように見せなければならない場合は、Ultimate EditionofWindowsのライセンスを購入してください。これにより、これらのネイティブリソースを変更する言語パックをインストールできます。または、MSDNサブスクリプションを使用して、デンマーク語のWindowsバージョンにアクセスします。

于 2011-12-05T15:32:07.617 に答える
2

「今日」のラベルは、コントロールパネルのオペレーティングシステムの言語(地域と言語)を反映しています。下の画像を参照してください。

これはWindowsフォームライブラリに組み込まれているため、かなり困惑しています。この問題を修正するためにプライベートフィールドを上書き/非表示/設定することはできません。これは.NET4.0でも同じです。

回避策は、MonthCalendarのTodayラベルを非表示にし、MonthCalendarを含むUserControlを作成して、Todayボタンを模倣し、テキストを正しい言語で表示することです。

于 2011-12-05T15:30:19.663 に答える