Здравствуйте, Аноним, Вы писали:
А>Хочется держать все локализуемые ресурсы (только строки в моем случае) в одном файле.
Зачем?
А>2) В SomeForm.Designer.cs пишу примерно так
Не надо никогда ничего изменять в SomeForm.Designer.cs.
А>Как сделать правильно и просто?
Если Вас всё же устроит хранение локализованных ресурсов в разных файлах — а, по-моему это хорошая практика, то стандартно:
Выставить свойство Localizable = true, и для разных значений свойства Langugage, менять локальные настройки.
Здравствуйте, Nuseraro, Вы писали:
N>Здравствуйте, Аноним, Вы писали:
А>>Хочется держать все локализуемые ресурсы (только строки в моем случае) в одном файле. N>Зачем?
А>>2) В SomeForm.Designer.cs пишу примерно так N>Не надо никогда ничего изменять в SomeForm.Designer.cs.
А>>Как сделать правильно и просто? N>Если Вас всё же устроит хранение локализованных ресурсов в разных файлах — а, по-моему это хорошая практика, то стандартно: N>Выставить свойство Localizable = true, и для разных значений свойства Langugage, менять локальные настройки.
Полностью поддерживаю. Хранение перевода в разных файлах (перевод по месту) позволяет не только переводить слова,
но и изменять размеры самих элементов управления (ибо на разных языках длина слова разная)
Здравствуйте, vioso, Вы писали:
V>Полностью поддерживаю. Хранение перевода в разных файлах (перевод по месту) позволяет не только переводить слова, V>но и изменять размеры самих элементов управления (ибо на разных языках длина слова разная)
Плюс ещё глобальный файл ресурсов со временем превращается в помойку, в которой сложно определить, что к чему относится, а что вообще уже не нужно .
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[2]: Локализация приложения Windows Forms
От:
Аноним
Дата:
30.11.08 19:18
Оценка:
Здравствуйте, Nuseraro, Вы писали:
N>Здравствуйте, Аноним, Вы писали:
А>>Хочется держать все локализуемые ресурсы (только строки в моем случае) в одном файле. N>Зачем?
А>>2) В SomeForm.Designer.cs пишу примерно так N>Не надо никогда ничего изменять в SomeForm.Designer.cs.
А>>Как сделать правильно и просто? N>Если Вас всё же устроит хранение локализованных ресурсов в разных файлах — а, по-моему это хорошая практика, то стандартно: N>Выставить свойство Localizable = true, и для разных значений свойства Langugage, менять локальные настройки.
Это все, конечно, хорошо, но как тогда быть со строковыми ресурсами не относящимися к форме?
Сейчас у меня сделано так: для конкретного языка (напр. ru-RU, en-GB, en-US) делается отдельный ресурсный файл
со строками — например Resources.ru-RU.resx, в Post-Build генерируется соответстующая ресурсная сборка {PrimaryAssemblyName}.resources.dll
Но в случае, если в основном проекте есть локализованная форма, эту же сборку генерирует студия, и она потом перезаписывается в Post-Build-е.
Здравствуйте, <Аноним>, Вы писали:
А>Это все, конечно, хорошо, но как тогда быть со строковыми ресурсами не относящимися к форме? А>Сейчас у меня сделано так: для конкретного языка (напр. ru-RU, en-GB, en-US) делается отдельный ресурсный файл А>со строками — например Resources.ru-RU.resx, в Post-Build генерируется соответстующая ресурсная сборка {PrimaryAssemblyName}.resources.dll
А зачем ты сам генерируешь сборку в PostBuild? Студия сама умеет это делать, тогда ничего конфликтовать не будет.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[3]: Локализация приложения Windows Forms
От:
Аноним
Дата:
01.12.08 13:04
Оценка:
А>Как решить эту проблему?
Доброго !
Включить в проэкт файлы ресурсов MyMessages.resx MyMessages.ru.resx и т.д.
Прописать строки сообщений и т.д
Использвать :
MessageBox.Show(MyMessages.String1...)
С уважением..
Re[4]: Локализация приложения Windows Forms
От:
Аноним
Дата:
02.12.08 08:07
Оценка:
Здравствуйте, Аноним, Вы писали:
А>>Как решить эту проблему? А>Доброго ! А>Включить в проэкт файлы ресурсов MyMessages.resx MyMessages.ru.resx и т.д. А>Прописать строки сообщений и т.д А>Использвать : А>MessageBox.Show(MyMessages.String1...) А>С уважением..
Похоже я сам напутал... Неделю назад мне попалась в руки статья (впрочем довольно старая) про локализацию в дотнете. Там был описан как раз тот грабельный способ — сделать батник, собирать пост-билд, у добавленных .ru.resx ресурсов выставить в Build Action — None.