AutoScaling WinForm Display (маленький, средний)
Прежде всего, пожалуйста, прости меня, но мои скриншоты сделаны на французском языке из-за моей установки Windows на работе. Это все еще очень легко понять, хотя. Я добавлю скриншоты, чтобы сделать его более привлекательным.
Вот некоторая справочная информация:
- Windows 7 64bit
- Visual Studio 2010
- По умолчанию отображается 100%
- AutoScaleMode: DPI
- AutoSize: True
Мое приложение представляет собой форму окна, которая была разработана на дисплее по умолчанию (маленький - 100%). Вот так:
Как видите, "Маленький" или " Маленький" дисплей - это выбор по умолчанию.
Маленький дисплей - 100% (по умолчанию)
Вот как выглядит мое приложение с этим параметром. Это правильный дисплей
Средний дисплей - 125%
Красные прямоугольники указывают на нежелательное пустое пространство.
Я пытался:
- Привязка / закрепление моих элементов управления, таких как мои разделенные контейнеры, панели макета таблицы, представления списков в Form_Load и через пользовательский интерфейс. Это не сработало.
- Добавление разделенного контейнера в форму, и все элементы управления соответственно разделены на нее.
- Добавление панелей макета таблицы, где все текстовые поля и кнопки расположены в соответствующих ячейках
Я действительно думал, что это проблема масштабирования из-за якоря и стыковки. Хотя это, похоже, и не было проблемой... Похоже, что возникли проблемы - это элемент управления Tab и Listviews ...
Некоторые пользователи (большинство) имеют свои настройки по умолчанию (100%), но есть несколько, у которых они имеют среднюю настройку, вызывая эту проблему масштабирования. Есть ли способ это исправить?
3 ответа
Я исправил свою проблему, поместив элементы управления вкладками и представления списка в табличную панель. Все, что не было должным образом масштабировано, должно быть помещено в TableLayoutPanel. Я сохранил свой AutoScaleMode
в DPI
а также AutoSize
в True
Обязательно закрепите все в своих родительских контейнерах.
Вот схема документа для более наглядного (как я):
По какой-то причине я не вижу ваши скриншоты или ссылки, поэтому не могу представить проблему. Если проблема в масштабировании, попробуйте установить AutoScaleMode
в None
,
Мне недавно пришлось сделать это, потому что мое приложение winform было интенсивным с изображениями, и оно не отображалось правильно в настройках среды, потому что я построил его с использованием стандартного дисплея малых настроек. Изменение режима масштабирования на None
работал на меня.
Просто нажмите на форму и перейдите на панель свойств. Найдите элемент "Якорь" и щелкните раскрывающийся список. Вы нажимаете на все линии в квадратной структуре, чтобы стать серым. Затем нажмите Enter. Проблема решена.