Каков правильный способ изменить язык формы во время выполнения?
- Настройка всех элементов управления вручную с помощью рекурсии, например
- Сохранить выбор языка в файле > Перезапустить приложение > Загрузить язык
выбор до
InitializeComponent();
- Использование конструктора форм для замены экземпляра active из (если это возможно)
- Что-то еще
Существует так много наполовину написанных нитей об этом, но никто не дает реального ответа на то, что является правильным способом для этого?
UPDATE:
Чтобы уточнить мой вопрос:
Выполнение чего-то подобного:
public Form1()
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("de");
this.InitializeComponent();
}
работает отлично, и все мои элементы управления и все остальное в ресурсах правильно переведены. И что-то вроде:
private void button1_Click(object sender, EventArgs e)
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en");
}
ничего не делает, форма остается в языке, который я установил до InitializeComponent();