.NET MAUI 桌面应用五大特性概述
上个月,微软发布了关于 .NET MAUI 桌面应用开发的博客文章,介绍了五大关键特性,旨在提升用户体验并充分利用桌面平台的硬件和操作系统。这些特性由 .NET 社区的首席项目经理 James Montemagno 详细阐述。
五大特性
多窗口支持:
.NET MAUI 框架的基础发生了重大变化,Window现在作为内容显示的基础。Application类中的CreateWindow方法允许创建新窗口。开发者可以通过内置 API 打开和关闭窗口,充分利用桌面或平板设备的大屏幕显示更多信息。var weatherDetails = new Window(new WeatherDetailsPage()); Application.Current.OpenWindow(weatherDetails);
// 关闭特定窗口
Application.Current.CloseWindow(weatherDetails);
// 关闭活动窗口
Application.Current.CloseWindow(GetParentWindow());微软提供了关于多窗口配置的文档。
顶级菜单栏:
菜单栏是桌面应用的主要特性之一,.NET MAUI 简化了菜单栏的集成,仅需几行代码即可实现。此功能还允许 iPad 用户通过键盘访问菜单。
每个ContentPage包含一个MenuBarItems集合,支持多级菜单,菜单项可以通过 XAML 或 C# 创建,并支持启用/禁用、子菜单、图标等功能。<ContentPage ...> <ContentPage.MenuBarItems> <MenuBarItem Text="File"> <MenuFlyoutItem Text="Exit" Command="{Binding ExitCommand}" /> </MenuBarItem> </ContentPage.MenuBarItems> </ContentPage>上下文菜单:
上下文菜单在用户右键点击某个元素时提供更多选项,其 API 与菜单栏类似,但根据特定控件显示。菜单项可以绑定到Command,支持图标、子菜单和分隔符。<Editor> <FlyoutBase.ContextFlyout> <MenuFlyout> <MenuFlyoutItem Text="Bold" Clicked="OnBoldClicked"/> <MenuFlyoutItem Text="Italics" Clicked="OnItalicsClicked"/> <MenuFlyoutItem Text="Underline" Clicked="OnUnderlineClicked"/> </MenuFlyout> </FlyoutBase.ContextFlyout> </Editor>- 工具提示:
工具提示通过ToolTipProperties.Text附加属性为桌面用户提供额外的上下文信息,可以在 XAML 或代码中设置。 - 指针手势:
.NET MAUI 新增了针对鼠标指针的手势识别器,可以识别与控件交互时的指针事件,并提供指针相对于控件的位置信息,使开发者能够根据指针的移动执行特定操作。
总结
这些特性显著增强了 .NET MAUI 在桌面应用开发中的能力。开发者可以通过多窗口支持、菜单栏、上下文菜单、工具提示和指针手势等功能,创建更具交互性和用户体验的应用。更多详细信息可参考微软提供的官方文档。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。