Udostępnij za pośrednictwem


Windows Forms Add Configuration, element

Element <add> dodaje wstępnie zdefiniowany klucz określający, czy aplikacja Formularz systemu Windows obsługuje funkcje dodane do aplikacji Windows Forms w programie .NET Framework 4.7 lub nowszym.

Składnia

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

Atrybuty i elementy

W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.

Atrybuty

Atrybut opis
key Atrybut wymagany. Wstępnie zdefiniowana nazwa klucza odpowiadająca określonej funkcji dostosowywalnej formularzy systemu Windows Forms.
value Atrybut wymagany. Wartość, która ma zostać przypisana do keyelementu .

key nazwy atrybutów i skojarzone wartości

key nazwa Wartości opis
"AnchorLayout.DisableSinglePassControlScaling" "true"|" false" Wskazuje, czy zakotwiczone kontrolki są skalowane w jednym przebiegu. "true", aby wyłączyć skalowanie pojedynczego przekazywania; w przeciwnym razie, fałsz. Aby uzyskać więcej informacji, zobacz sekcję "Skalowanie pojedynczego przekazywania" w uwagach .
"DpiAwareness" "PerMonitorV2"|" false" Wskazuje, czy aplikacja jest świadoma dpi. Ustaw klucz na "PerMonitorV2", aby obsługiwać rozpoznawanie dpi; w przeciwnym razie ustaw wartość "false". Rozpoznawanie dpi jest funkcją zgody; aby móc korzystać z wysokiej obsługi DPI formularzy systemu Windows, należy ustawić jego wartość na "PerMonitorV2". Aby uzyskać więcej informacji, zobacz sekcję Uwagi.
"CheckedListBox.DisableHighDpiImprovements" "true"|" false" Wskazuje, czy kontrolka CheckedListBox korzysta z ulepszeń skalowania i układu wprowadzonych w programie .NET Framework 4.7. "true", aby zrezygnować ze skalowania i ulepszeń układu; w przeciwnym razie "false".
"DataGridView.DisableHighDpiImprovements" "true"|" false" Wskazuje, czy DataGridView ulepszenia skalowania i układu kontrolek wprowadzone w programie .NET Framework 4.7. "prawda", aby zrezygnować z rozpoznawania dpi; "false" w przeciwnym razie.
"DisableDpiChangedMessageHandling" "true"|" false" "true", aby zrezygnować z odbierania komunikatów związanych ze zmianami skalowania DPI; "false" w przeciwnym razie. Aby uzyskać więcej informacji, zobacz sekcję Uwagi.
"EnableWindowsFormsHighDpiAutoResizing" "true"|" false" Wskazuje, czy aplikacja Windows Forms jest automatycznie zmieniana z powodu zmian skalowania DPI. "true", aby włączyć automatyczną zmianę rozmiaru; w przeciwnym razie, fałsz.
"Form.DisableSinglePassControlScaling" "true"|" false" Wskazuje, czy Form element jest skalowany w jednym przebiegu. "true", aby wyłączyć skalowanie jednoprzepustowe; w przeciwnym razie, fałsz. Aby uzyskać więcej informacji, zobacz sekcję "Skalowanie pojedynczego przekazywania" w uwagach .
"MonthCalendar.DisableSinglePassControlScaling" "true"|" false" Wskazuje, czy kontrolka MonthCalendar jest skalowana w jednym przebiegu. "true", aby wyłączyć skalowanie jednoprzepustowe; w przeciwnym razie, fałsz. Aby uzyskać więcej informacji, zobacz sekcję "Skalowanie pojedynczego przekazywania" w uwagach .
"Toolstrip.DisableHighDpiImprovements" "true"|" false" Wskazuje, czy kontrolka ToolStrip korzysta z ulepszeń skalowania i układu wprowadzonych w programie .NET Framework 4.7. "prawda", aby zrezygnować z rozpoznawania dpi; "false" w przeciwnym razie.

Elementy podrzędne

Brak.

Elementy nadrzędne

Element opis
<System.Windows.Forms.ApplicationConfigurationSection> Konfiguruje obsługę nowych funkcji aplikacji Windows Forms.

Uwagi

Począwszy od programu .NET Framework 4.7, <System.Windows.Forms.ApplicationConfigurationSection> element umożliwia skonfigurowanie aplikacji Windows Forms w celu korzystania z funkcji dodanych w ostatnich wersjach programu .NET Framework.

Element <System.Windows.Forms.ApplicationConfigurationSection> umożliwia dodanie co najmniej jednego elementu podrzędnego <add> , z których każdy definiuje określone ustawienie konfiguracji.

Aby zapoznać się z omówieniem obsługi wysokiej rozdzielczości DPI formularzy systemu Windows, zobacz Obsługa wysokiej rozdzielczości DPI w formularzach systemu Windows.

DpiAwareness

Aplikacje Windows Forms, które działają w wersjach systemu Windows, począwszy od systemu Windows 10 Creators Edition i docelowych wersji programu .NET Framework, począwszy od programu .NET Framework 4.7, można skonfigurować tak, aby korzystać z ulepszeń o wysokiej rozdzielczości DPI wprowadzonych w programie .NET Framework 4.7. Są to:

  • Obsługa dynamicznych scenariuszy DPI, w których użytkownik zmienia współczynnik DPI lub współczynnik skalowania po uruchomieniu aplikacji Windows Forms.

  • Ulepszenia skalowania i układu wielu kontrolek Windows Forms, takich jak kontrolka MonthCalendar i kontrolka CheckedListBox .

Wysoka świadomość DPI jest funkcją zgody; domyślnie wartość to DpiAwareness false. Możesz wyrazić zgodę na obsługę rozpoznawania dpi formularzy systemu Windows, ustawiając wartość tego klucza na PerMonitorV2 wartość w pliku konfiguracji aplikacji. Jeśli rozpoznawanie dpi jest włączone, wszystkie poszczególne funkcje DPI są również włączone. Są to:

  • Zmienione komunikaty DPI, które są kontrolowane przez DisableDpiChangedMessageHandling klucz.

  • Obsługa dynamicznej rozdzielczości DPI, która jest kontrolowana EnableWindowsFormsHighDpiAutoResizing przez klucz.

  • Skalowanie kontrolek z jednym przekazywaniem, które jest kontrolowane przez Form.DisableSinglePassControlScaling kontrolki dla poszczególnych Form kontrolek, przez AnchorLayout.DisableSinglePassControlScaling klucz dla zakotwiczonych kontrolek i przez MonthCalendar.DisableSinglePassControlScaling klucz dla kontrolki MonthCalendar

  • Ulepszenia skalowania i układu o wysokiej rozdzielczości DPI, które są kontrolowane przez CheckListBox.DisableHighDpiImprovements klucz kontrolki CheckedListBox , przez DataGridView.DisableHighDpiImprovements klucz dla DataGridView kontrolki i przez Toolstrip.DisableHighDpiImprovements klucz kontrolki ToolStrip .

Jedno domyślne ustawienie zgody udostępniane przez ustawienie DpiAwareness PerMonitorV2 jest ogólnie odpowiednie dla nowych aplikacji Windows Forms. Można jednak zrezygnować z indywidualnych ulepszeń o wysokiej rozdzielczości DPI, dodając odpowiedni klucz do pliku konfiguracji aplikacji. Aby na przykład skorzystać ze wszystkich nowych funkcji DPI z wyjątkiem dynamicznej obsługi dpi, należy dodać następujące elementy do pliku konfiguracji aplikacji:

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

Zazwyczaj zrezygnowasz z określonej funkcji, ponieważ wybrano ją programowo.

Aby uzyskać więcej informacji na temat korzystania z obsługi wysokiej rozdzielczości DPI w aplikacjach windows Forms, zobacz Obsługa wysokiej rozdzielczości DPI w formularzach systemu Windows.

DisableDpiChangedMessageHandling

Począwszy od programu .NET Framework 4.7, kontrolki Windows Forms zgłaszają szereg zdarzeń związanych ze zmianami skalowania DPI. Obejmują one zdarzenia DpiChangedAfterParent, DpiChangedBeforeParenti DpiChanged . Wartość DisableDpiChangedMessageHandling klucza określa, czy te zdarzenia są wywoływane w aplikacji Windows Forms.

Skalowanie jednoprzepustowe

Skalowanie pojedyncze lub wieloprzepustowe wpływa na postrzeganą czas reakcji interfejsu użytkownika i wygląd wizualny elementów interfejsu użytkownika w miarę ich skalowania. Począwszy od programu .NET Framework 4.7, formularze systemu Windows używają skalowania pojedynczego przekazywania. W poprzednich wersjach programu .NET Framework skalowanie zostało przeprowadzone przez wiele przebiegów, co spowodowało, że niektóre kontrolki były skalowane bardziej niż było to konieczne. Skalowanie jednoprzepustowe powinno być wyłączone tylko wtedy, gdy aplikacja zależy od starego zachowania.

Zobacz też