Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Bevezetett verzió: .NET 6
Távolítsa el a magas DPI-beállításokat az app.manifest fájlból, és konfigurálja
Application.SetHighDpiModeAPI-val vagyApplicationHighDpiModeprojekttulajdonságokkal.
A Windows Forms-alkalmazásoknak az alkalmazáskonfigurációs vagy a Application.SetHighDpiMode API használatával kell megadniuk az alkalmazás DPI-tudatosságát.
Fontos
A .NET 9-től kezdve ez a figyelmeztetés WFO0003lett.
Áthidaló megoldások
C# használata
Használja az új bootstrap API- a ApplicationConfiguration.Initialize metódus meghívásával Application.Run()előtt.
class Program
{
[STAThread]
static void Main()
{
ApplicationConfiguration.Initialize();
Application.Run(new Form1());
}
}
A ApplicationConfiguration.Initialize metódus az alkalmazás fordításakor jön létre az alkalmazás projektfájljának beállításai alapján. Tekintse meg például a következő <Application*> beállításokat:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
<ImplicitUsings>enable</ImplicitUsings>
<ApplicationVisualStyles>true</ApplicationVisualStyles>
<ApplicationUseCompatibleTextRendering>false</ApplicationUseCompatibleTextRendering>
<ApplicationHighDpiMode>SystemAware</ApplicationHighDpiMode>
<ApplicationDefaultFont>Microsoft Sans Serif, 8.25pt</ApplicationDefaultFont>
</PropertyGroup>
</Project>
Ezek a beállítások a következő metódust generálják:
[CompilerGenerated]
internal static partial class ApplicationConfiguration
{
public static void Initialize()
{
global::System.Windows.Forms.Application.EnableVisualStyles();
global::System.Windows.Forms.Application.SetCompatibleTextRenderingDefault(false);
global::System.Windows.Forms.Application.SetHighDpiMode(HighDpiMode.SystemAware);
global::System.Windows.Forms.Application.SetDefaultFont(new Font(new FontFamily("Microsoft Sans Serif"), 8.25f, (FontStyle)0, (GraphicsUnit)3));
}
}
A Visual Basic használata
A Visual Basic egy kicsit másként működik, mint a C# jelenleg. A projektfájl beállításaira szükség van ahhoz, hogy a Visual Studio észlelje az alkalmazásbeállításokat, de konfigurálnia kell a beállításokat a projekt tulajdonságlapján Alkalmazás>Application Framework (amely hatással van a My Project\Application.myapp fájlra) vagy az alkalmazás indítási eseményeiben.
Fontos
A betűtípus nem állítható be a projekt tulajdonságai között.
Az alábbi példakód bemutatja az ApplyApplicationDefaults esemény kezelését az alapértelmezett betűtípus és HighDPI mód konfigurálásához:
Imports Microsoft.VisualBasic.ApplicationServices
Namespace My
Partial Friend Class MyApplication
Private Sub MyApplication_ApplyApplicationDefaults(sender As Object, e As ApplyApplicationDefaultsEventArgs) Handles Me.ApplyApplicationDefaults
e.Font = New Font("Microsoft Sans Serif", 8.25)
e.HighDpiMode = HighDpiMode.SystemAware
End Sub
End Class
End Namespace
A figyelmeztetés kezelése
Tiltsa le a figyelmeztetést az alábbi módszerek valamelyikével:
Adja meg a szabály súlyosságát a .editorConfig fájlban.
[*.{cs,vb}] dotnet_diagnostic.WFAC010.severity = noneTovábbi információ a szerkesztő konfigurációs fájljairól: A kódelemzési szabályok konfigurációs fájljai.
Adja hozzá a következő
PropertyGroupa projektfájlhoz:<PropertyGroup> <NoWarn>$(NoWarn);WFAC010</NoWarn> </PropertyGroup>Rejtse el a kódban a
#pragma warning disable WFAC010irányelvvel.
.NET Desktop feedback