Я искал приложения, подходящие для нескольких языков на C #, так как мне нужно работать над небольшим проектом, где это так. Я нашел в основном два способа сделать это:
Установите для свойства Localizable формы значение true, установите свойство Language, заполните все метки и тому подобное, и все готово. Главный недостаток, который я вижу в этом: как сделать другие вещи, не являющиеся частью формы, готовыми для нескольких языков (например, всплывающие окна, файлы журналов или окна и т. Д.).
Создайте файл ресурсов, например «Lang.en-us.resx» и по одному для каждого языка, например «Lang.nl-nl.resx», и заполните его строками. Кажется, что среда IDE автоматически генерирует для меня класс, поэтому в коде я могу просто использовать Lang.SomeText. Самый большой недостаток, который я вижу в этом, заключается в том, что для каждой формы мне нужно самому установить все метки и другие подписи в коде (и, похоже, привязка данных не работает с этими ресурсами).
Я уверен, однако, что есть и другие способы сделать это.
Итак, что лучше всего? Что проще всего для небольших приложений (несколько форм, подключение к базе данных и т. Д.) И что лучше всего масштабируется для более крупных приложений?