Форми Windows далі будуть розвиватися в .NET 6
Середовище виконання для Windows Forms, платформи інтерфейсу користувача Microsoft для створення настільних додатків Windows, було доповнено нещодавнім випуском .NET 6.0, хоча програма все ще має проблеми з високим DPI та масштабуванням, які необхідно вирішити.
У бюлетені Windows Forms Enhancements, опублікованому 16 листопада, Microsoft заявила, що працює через «високий діапазон DPI», щоб змусити програми Windows Forms належним чином підтримувати режим усвідомлення DPI в режимі PerMonitorV2, який дозволяє програмам негайно правильно відображати, коли змінюється DPI.
Підтримка PerMonitorV2 була складною проблемою, і «на жаль, ми не змогли досягти того, чого сподівалися», – сказав Ігор Великороссов, інженер-програміст Windows Forms в Microsoft. Однак у випуску .NET 6 був досягнутий прогрес із підтримкою створення елементів керування з такою ж усвідомленістю DPI, що й програма, та масштабуванням ContainerControl і дочірні вікна MDI в режимі PerMonitorV2 у більшості сценаріїв.
Microsoft навела ряд інших змін до Windows Forms у .NET 6.0, випущених 8 листопада:
- Більш спрощений запуск програми Windows Forms, який дозволяє обмінювати інформацію про конфігурацію між середовищем виконання та конструктором під час розробки.
- Також для завантаження програми Visual Basic в .NET 6.0 вводить нову подію програми,
ApplyApplicationDefaultsщоб визначити параметри всієї програми типовим способом Visual Basic. Підтримка конструктора для шрифту за замовчуванням, налаштованого за допомогою властивостей MSBuild, також буде надано найближчим часом. - Шаблони оновлено для підтримки C #
global usingДирективи, простори імен, пов’язані з файлами, і типи посилань, які допускають значення NULL. - Для доступності є покращена підтримка допоміжних технологій.
- Перенесення для відсутніх дизайнерів та інфраструктури, пов’язаної з проектувальником, було завершено, щоб уможливити будівництво конструктора загального призначення.
- Впроваджено нові перевантаження для
Control.Invoke()іControl.BeginInvoke()Методи, які приймаютьActionіFunc<T>і дозволяють писати більш сучасний і стислий код.






