Поделиться через


Элемент конфигурации Add Windows Forms

Элемент <add> добавляет предопределенный ключ, указывающий, поддерживает ли приложение Windows Forms функции, добавленные в Windows Forms приложения в платформа .NET Framework 4.7 или более поздней версии.

Синтаксис

<System.Windows.Forms.ApplicationConfigurationSection>
  <add key="key-name" value="key-value" />
</System.Windows.Forms.ApplicationConfigurationSection>

Элементы и атрибуты

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут Описание
key Обязательный атрибут. Предопределенное имя ключа, соответствующее определенной Windows Forms настраиваемой функции.
value Обязательный атрибут. Значение, присваиваемое параметру key.

key имена атрибутов и связанные значения

Имя в key Значения Описание
AnchorLayout.DisableSinglePassControlScaling "true"|"false" Указывает, масштабируются ли привязанные элементы управления за один проход. "true", чтобы отключить однопрохоходитное масштабирование; в противном случае — false. Дополнительные сведения см. в разделе "Однопроходитное масштабирование" в разделе Примечания .
"DpiAwareness" "PerMonitorV2"|" false" Указывает, учитывает ли приложение DPI. Задайте для ключа значение PerMonitorV2, чтобы обеспечить осведомленность о DPI; в противном случае задайте для него значение false. Информирование о DPI является функцией согласия; Чтобы воспользоваться преимуществами поддержки высокой DPI Windows Forms, следует задать для нее значение PerMonitorV2. Дополнительные сведения см. в разделе Примечания .
"CheckedListBox.DisableHighDpiImprovements" "true"|"false" Указывает, использует ли CheckedListBox элемент управления преимущества масштабирования и улучшения макета, представленные в платформа .NET Framework 4.7. "true", чтобы отказаться от масштабирования и улучшений макета; в противном случае — false.
"DataGridView.DisableHighDpiImprovements" "true"|"false" Указывает, были ли DataGridView улучшения масштабирования и макета элемента управления, представленные в платформа .NET Framework 4.7. "true", чтобы отказаться от осведомленности о DPI; "false" в противном случае.
DisableDpiChangedMessageHandling "true"|"false" "true", чтобы отказаться от получения сообщений, связанных с изменениями масштабирования DPI; "false" в противном случае. Дополнительные сведения см. в разделе Примечания .
"EnableWindowsFormsHighDpiAutoResizing" "true"|"false" Указывает, изменяется ли размер приложения Windows Forms автоматически из-за изменений в масштабировании DPI. "true", чтобы включить автоматическое изменение размера; в противном случае — false.
"Form.DisableSinglePassControlScaling" "true"|"false" Указывает, масштабируется ли за Form один проход. "true", чтобы отключить однопроходитное масштабирование; в противном случае — false. Дополнительные сведения см. в разделе "Однопроходитное масштабирование" в разделе Примечания .
"MonthCalendar.DisableSinglePassControlScaling" "true"|"false" Указывает, масштабируется ли MonthCalendar элемент управления за один проход. "true", чтобы отключить однопроходитное масштабирование; в противном случае — false. Дополнительные сведения см. в разделе "Однопроходитное масштабирование" в разделе Примечания .
"Toolstrip.DisableHighDpiImprovements" "true"|"false" Указывает, использует ли ToolStrip элемент управления преимущества масштабирования и улучшения макета, представленные в платформа .NET Framework 4.7. "true", чтобы отказаться от осведомленности о DPI; "false" в противном случае.

Дочерние элементы

Отсутствует.

Родительские элементы

Элемент Описание
<System.Windows.Forms.ApplicationConfigurationSection> Настраивает поддержку новых Windows Forms функций приложения.

Комментарии

Начиная с платформа .NET Framework 4.7, элемент позволяет настраивать Windows Forms приложения для использования функций, <System.Windows.Forms.ApplicationConfigurationSection> добавленных в последних выпусках платформа .NET Framework.

Элемент <System.Windows.Forms.ApplicationConfigurationSection> позволяет добавить один или несколько дочерних <add> элементов, каждый из которых определяет определенный параметр конфигурации.

Общие сведения о поддержке Windows Forms высокого разрешения см. в разделе Поддержка высокого разрешения в Windows Forms.

DpiAwareness

Windows Forms приложения, которые выполняются в версиях Windows, начиная с Windows 10 Creators Edition и целевых версиях платформа .NET Framework начиная с платформа .NET Framework 4.7, можно настроить для использования преимуществ усовершенствований с высоким разрешением, представленных в платформа .NET Framework 4.7. К ним относятся следующие объекты.

  • Поддержка сценариев с динамическим DPI, в которых пользователь изменяет DPI или коэффициент масштабирования после запуска приложения Windows Forms.

  • Улучшения масштабирования и макетирования ряда элементов управления Windows Forms, таких как MonthCalendar и CheckedListBox.

Высокий уровень поддержки DPI — это возможность согласия; По умолчанию значение DpiAwareness равно false. Вы можете согласиться на поддержку Windows Forms поддержки DPI, задав этому ключу PerMonitorV2 значение в файле конфигурации приложения. Если включена поддержка DPI, включены также все отдельные функции DPI. К ним относятся следующие объекты.

  • Сообщения об изменении DPI, которые управляются ключом DisableDpiChangedMessageHandling .

  • Поддержка динамического DPI, которая управляется ключом EnableWindowsFormsHighDpiAutoResizing .

  • Однопрохократное масштабирование элемента управления, которое управляется Form.DisableSinglePassControlScaling для отдельных Form элементов управления, ключом AnchorLayout.DisableSinglePassControlScaling для привязанных элементов управления и ключом MonthCalendar.DisableSinglePassControlScaling для MonthCalendar элемента управления

  • Улучшения масштабирования и макета с высоким разрешением, которые управляются CheckListBox.DisableHighDpiImprovements ключом для CheckedListBox элемента управления, ключом DataGridView.DisableHighDpiImprovements для DataGridView элемента управления и ключом Toolstrip.DisableHighDpiImprovements для ToolStrip элемента управления.

Один параметр согласия по умолчанию, предоставляемый параметром , DpiAwarenessPerMonitorV2 как правило, подходит для новых Windows Forms приложений. Однако затем можно отказаться от отдельных улучшений с высоким разрешением, добавив соответствующий ключ в файл конфигурации приложения. Например, чтобы воспользоваться всеми новыми функциями DPI, за исключением поддержки динамического DPI, добавьте в файл конфигурации приложения следующее:

<System.Windows.Forms.ApplicationConfigurationSection>
   <add key="DpiAwareness" value="PerMonitorV2" />
   <!-- Disable dynamic DPI support -->
   <add key="EnableWindowsFormsHighDpiAutoResizing" value="false" />
</System.Windows.Forms.ApplicationConfigurationSection>

Как правило, вы отказываетесь от определенной функции, так как вы решили обрабатывать ее программным способом.

Дополнительные сведения о том, как использовать поддержку высокого разрешения в Windows Forms приложениях, см. в статье Поддержка высокого разрешения в Windows Forms.

DisableDpiChangedMessageHandling

Начиная с платформа .NET Framework 4.7, Windows Forms элементы управления вызывают ряд событий, связанных с изменениями в масштабировании DPI. К ним относятся DpiChangedAfterParentсобытия , DpiChangedBeforeParentи DpiChanged . Значение DisableDpiChangedMessageHandling ключа определяет, вызываются ли эти события в Windows Forms приложении.

Однопроходиточное масштабирование

Однократное или многопрохожее масштабирование влияет на воспринимаемую скорость отклика пользовательского интерфейса и внешний вид элементов пользовательского интерфейса по мере их масштабирования. Начиная с платформа .NET Framework 4.7, в Windows Forms используется однопрохократное масштабирование. В предыдущих версиях платформа .NET Framework масштабирование выполнялось с помощью нескольких проходов, что приводило к увеличению масштаба некоторых элементов управления, чем требовалось. Однопрохопасное масштабирование следует отключать только в том случае, если приложение зависит от старого поведения.

См. также раздел