2

実行時にカルチャを切り替えることができるアプリケーションを作成しました。しかし、アプリケーションが実行され続けている間に、新しいサテライトアセンブリをアプリケーションに追加したいと思います。特定のカルチャフォルダー(ファイルが含まれているフォルダーなど)をアプリケーションフォルダーにコピーしてafからLocalisation.resources.dll、次のコードを実行します。

ResourceManager rm = new ResourceManager(ResxExtension.GetDefaultResxName(this), this.GetType().Assembly);

radComboBox1.Items.Clear();
foreach (CultureInfo ci in CultureInfo.GetCultures(CultureTypes.AllCultures).OrderBy(x => x.DisplayName))
{
    ResourceSet resourceSet = rm.GetResourceSet(ci, true, false);
    if (resourceSet != null)
        radComboBox1.Items.Add(ci);
}

// Show CurrentUICulture in the combobox
radComboBox1.SelectedItem = GetResourceCulture(CultureManager.UICulture, rm);

しかし、その後は何も起こりません。古い文化を見続けますが、追加された文化は表示されません。アプリケーションを停止して開始した場合にのみ、新しいカルチャがコンボボックスに追加されます。

実行時にサテライトアセンブリを追加することは可能ですか?または、常にアプリケーションを再起動する必要がありますか?

4

1 に答える 1