Application 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
封装应用及其可用服务。
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Application
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Application
Public Class Application
<Application />
- 继承
- 属性
Windows 要求
设备系列 |
Windows 10 (在 10.0.10240.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)
|
注解
Application 类封装应用并提供以下服务:
- 应用入口点,尤其是各种激活协定
- 应用生存期管理
- 应用范围内的资源
- 未经处理的异常检测
Application 对象通常在 App.xaml 的初始 XAML 中提供。 Visual Studio 中的默认项目模板生成一个 App
派生自 Application 的类,并提供可在其中添加初始化代码的入口点。
类 App
通过在其构造函数中调用生成的 InitializeComponent
方法,将自身与相应的 XAML 相关联。 可以将其他初始化代码添加到 App
构造函数,但通常只添加代码以将处理程序关联到 Application 事件。 对于其他初始化代码,应重写一个或多个初始化方法,例如 OnLaunched。
每当用户切换到另一个应用或桌面时,系统就会暂停应用,并在用户切换回应用时恢复应用,从而处理应用生存期。 但是,系统还可以在应用暂停时终止应用,以释放资源。 应处理 Suspending 事件以在终止时保存应用状态,并重写 OnLaunched 方法来还原应用状态。 仅当需要刷新应用暂停时可能已更改的任何显示内容时,才应处理 恢复 事件。 应用恢复时,无需还原其他应用状态。
由于应用程序在应用程序模型、codegen 和激活序列中的位置,应用程序对其 XAML 用法有一些限制:
- 除了 xmlns 声明和 x:Class 之外,根标记上
Application
不能显示任何其他属性。 - 请勿尝试更改来自项目模板 App.xaml 页面的 x:Class 值,使用生成操作中存在的命名方案存在其他依赖关系。
- 不要在 XAML 中连接应用程序事件处理程序。 所有事件连接都应在代码 (通常在构造函数) 中完成。 此外,通常对事件使用方法替代而不是事件语法 (例如,重写 OnActivated 以响应应用程序生命周期的该阶段。)
- XAML 中 Application 实例上唯一预期的属性是使用 XAML 属性元素用法填充 Application.Resources 属性的元素集。 有关详细信息,请参阅 资源。 若要为应用代码未捕获的任何异常提供常规错误处理,请处理 UnhandledException 事件。
注意
应用程序main文件必须命名为 App.xaml
。
版本历史记录
Windows 版本 | SDK 版本 | 已添加值 |
---|---|---|
1607 | 14393 | EnteredBackground |
1607 | 14393 | FocusVisualKind |
1607 | 14393 | LeavingBackground |
1607 | 14393 | OnBackgroundActivated |
1607 | 14393 | RequiresPointerMode |
1703 | 15063 | HighContrastAdjustment |
构造函数
Application() |
初始化 Application 类的新实例。 |
属性
Current |
获取当前 应用程序的 Application 对象。 |
DebugSettings |
获取一个 对象,该对象声明应用在调试环境中运行时的行为方式。 |
FocusVisualKind |
获取或设置应用可用于指示具有焦点的 UI 元素的视觉反馈的类型。
|
HighContrastAdjustment |
获取或设置一个值,该值指示框架是否在启用高对比度主题时自动调整视觉属性。 |
RequestedTheme |
获取或设置一个值,该值确定应用整体主题的深浅首选项。 |
RequiresPointerMode |
获取或设置 UWP 应用是否支持鼠标模式,该模式模拟与非指针输入设备(例如游戏板或遥控器)的指针交互体验。 (所有嵌套元素都继承此行为。) |
Resources |
获取应用程序范围的资源的集合,例如样式、模板和画笔。 |
方法
事件
EnteredBackground |
当应用从前台移动到后台时发生。 |
LeavingBackground |
当应用从后台移动到前台时发生。 |
Resuming |
当应用程序从“挂起”状态转换为“正在运行”状态时发生。 |
Suspending |
当应用程序从其他状态转换为“挂起”状态时发生。 |
UnhandledException |
当异常可由应用代码处理时发生,因为从本机级别Windows 运行时错误转发。 应用可以将事件标记为在事件数据中已处理。 |