если я не внесу какие-либо изменения в файл, то мне придется все зафиксировать
Довольно неясно точно что вы делаете, когда вы вынуждены фиксировать файл .resx, чтобы каким-то образом не превращать изображение в "бред". Жалоба не очень заслуживает доверия, я предполагаю, что реальная проблема заключается в том, что файл .resx изменяется, и вы не знаете, почему.
Существует все более распространенная причина изменения файлов .resx без какой-либо очевидной причины, достаточно просто открыть форму в конструкторе. Особенно в последнее время с Windows 10 становится все более распространенным. Основной причиной является настройка DPI (точек на дюйм) видеоадаптера. В течение десятилетий этот параметр оставался на уровне 100% (он же 96 точек на дюйм), но дешевые ЖК-панели с очень высоким разрешением стали обычным явлением, заставляя пользователей увеличивать масштаб до 125 или 150%, чтобы текст был разборчивым. А для установщика Win10 нужно выбрать более высокое значение.
Это довольно существенно влияет на дизайн пользовательского интерфейса, свойство Form.AutoScaleMode также работает во время разработки. Visual Studio поддерживает dpiAware, поэтому дизайнер может увидеть изменение DPI. WYSIWYG сохраняется, пока приложение объявлено dpiAware, а также . Очень важно, между прочим, в VS2015 Update 1, наконец, стало немного проще, теперь шаблон элемента File Manifest File включает его. Просто удалите комментарии.
Этот действительно также изменяет содержимое файла .resx. Специально для MenuStrip его TrayLocation сериализуется в файл. И метод OnImageScalingSizeChanged () пункта меню выполняется во время разработки. Также для любого элемента управления, если для свойства Localizable формы установлено значение True, эти свойства Location и Size сериализуются в файл .resx.
Самый простой способ понять, что является основной причиной, - это посмотреть файл формы Designer.cs:
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
Сравните это с тем же назначением свойства в новом проекте Winforms. Другое значение заставит автоматическое изменение масштаба выполнять свою работу и изменить файл .resx.
Обычной причиной несоответствия является дизайн, созданный на другом компьютере. Возможно, старше. Или, возможно, изменен другим членом команды, который запускает свой адаптер дисплея с другим параметром DPI. Добиться, чтобы все согласились, обычно не так просто, если у членов команды нет одинакового оборудования. Предоставление всем одинакового хорошего монитора - отличное улучшение морали за небольшие деньги :) И, возможно, вам не стоит так сильно с этим бороться, просто отметьте его, чтобы вам больше не напомнили в следующий раз.