У нас есть файл ресурсов с большим количеством переведенных строк, которые используются в разных местах нашего приложения. Есть ли лучший способ привязки, например, текста кнопки к определенной строке?C#: Как связать текст кнопки winforms с ресурсом
В настоящее время мы, как правило, просто делать что-то вроде этого в конструкторе, в обработчике события Load или в метод, называемый одним из тех, кто:
someButton.Text = CommonTexts.SomeString;
someMenuItem.Text = CommonTexts.SomeOtherString;
Есть ли лучший способ сделать это? Может быть, в дизайнере? Или это рекомендуемый способ сделать это?
Просто чтобы вы знали, как мы делаем фактический перевод: У нас есть один проект библиотеки классов, в котором содержатся только файлы resx. Основные файлы resx написаны на английском языке (конечно). Затем мы открываем эти базовые файлы resx в приложении под названием ResEx, где мы (или кто-то еще) переводом на другие языки. При компиляции Visual Studio автоматически создает сборки для каждого языка, которые автоматически используются в зависимости от текущего набора культуры. Это работает очень хорошо, поэтому мне не нужна информация о том, как сделать перевод, и такие (хотя мне всегда интересно, конечно, по курсу). Я спрашиваю, есть ли лучший способ получить эти переведенные строки из сборки ресурсов и во все различные свойства Text
.
Re: Редактировать: Вопрос счетчика: почему вы не используете стандартную систему FormLoad? Он встроен и невидим. –
Потому что мне было интересно, есть ли лучший способ. – Svish