多言語ソフトウェアでは、ソフトウェアのカルチャを変更するコードの下にあります。
string culture = ConfigurationManager.AppSettings["culture"].ToString();
Thread.CurrentThread.CurrentCulture = new CultureInfo(culture);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(culture);
カルチャ キーは、ar-IQ などのソフトウェアのカルチャを保持する app.config に保存されます。
Windowsフォームにパネルオブジェクトがあり、ユーザーカルチャに基づいて背景画像を設定したい。
テキスト リソースについては問題ありません。すべてのラベルのテキストは、ユーザー カルチャに基づいて変更されます。しかし、画像リソースの場合、私は常に1つのリソースから読み取りますが、これは問題です。画像は適切なリソースファイルからユーザーカルチャに基づいて読み取る必要があるためです。
たとえば、プロジェクト イメージ用に以下の 2 つのリソース ファイルがあります。
- Images.resx
- Images.ar.resx
すべての画像は、この tow リソース ファイルに埋め込まれています。
これらは、この 2 つのリソースの Login.png です。このコードを使用して、パネル オブジェクトの背景画像を変更します。
pnlLogin.BackgroundImage = Resources.Images.Login;
このコードは、常に Images.resx から Login.png 画像を読み取ります。ユーザー カルチャが ar-IQ に変更されたときに、Images.resx から Login.png 画像を読み取りたいと考えています。