Application 类

定义

封装 Windows Presentation Foundation 应用程序。

public ref class Application : System::Windows::Threading::DispatcherObject
public ref class Application : System::Windows::Threading::DispatcherObject, System::Windows::Markup::IQueryAmbient
public class Application : System.Windows.Threading.DispatcherObject
public class Application : System.Windows.Threading.DispatcherObject, System.Windows.Markup.IQueryAmbient
type Application = class
    inherit DispatcherObject
type Application = class
    inherit DispatcherObject
    interface IQueryAmbient
Public Class Application
Inherits DispatcherObject
Public Class Application
Inherits DispatcherObject
Implements IQueryAmbient
继承
Application
实现

示例

以下示例演示如何仅使用标记定义标准应用程序:

<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" />

以下示例演示如何仅使用代码定义标准应用程序:

using System;
using System.Windows;

namespace SDKSample
{
    public class AppCode : Application
    {
        // Entry point method
        [STAThread]
        public static void Main()
        {
            AppCode app = new AppCode();
            app.Run();
        }
    }
}

Imports System.Windows

Namespace SDKSample
    Public Class AppCode
        Inherits Application
        ' Entry point method
        <STAThread>
        Public Shared Sub Main()
            Dim app As New AppCode()
            app.Run()
        End Sub
    End Class
End Namespace

以下示例演示如何使用标记和代码隐藏的组合定义标准应用程序。

<Application 
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
  x:Class="SDKSample.App" />
using System.Windows;

namespace SDKSample
{
    public partial class App : Application { }
}

Imports System.Windows

Namespace SDKSample
    Partial Public Class App
        Inherits Application
    End Class
End Namespace

注解

Application 是封装 WPF 应用程序特定功能的类,包括:

Application 实现单一实例模式,以提供对其窗口、属性和资源范围服务的共享访问。 因此,每个 只能创建 类的 Application 一个 AppDomain实例。

可以使用标记、标记和代码隐藏或代码来实现 Application 。 如果使用 Application 标记(无论是标记还是标记和代码隐藏)实现 ,则必须将标记文件配置为 MICROSOFT 生成引擎 (MSBuild) ApplicationDefinition 项。

注意

独立应用程序不需要 Application 对象;可以实现自定义 static 入口点方法 (Main) ,该方法在不创建 实例 Application的情况下打开窗口。 但是, (XBAP) XAML 浏览器应用程序需要 对象 Application

构造函数

Application()

初始化 Application 类的新实例。

属性

Current

获取当前 ApplicationAppDomain 对象。

Dispatcher

获取与此 Dispatcher 关联的 DispatcherObject

(继承自 DispatcherObject)
MainWindow

获取或设置应用程序的主窗口。

Properties

获取应用程序范围属性的集合。

ResourceAssembly

获取或设置 , Assembly 它为 WPF 应用程序中的资源提供包统一资源标识符 (URI) 。

Resources

获取或设置应用程序范围资源(如样式和画笔)的集合。

ShutdownMode

获取或设置导致调用 Shutdown() 方法的条件。

StartupUri

获取或设置在应用程序启动时自动显示的 UI。

ThemeMode

封装 Windows Presentation Foundation 应用程序。

Windows

获取应用程序中的实例化窗口。

方法

CheckAccess()

确定调用线程是否可以访问此 DispatcherObject

(继承自 DispatcherObject)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
FindResource(Object)

使用指定的键搜索用户界面 (UI) 资源(如 StyleBrush),如果找不到请求的资源, (请参阅 XAML 资源) ,则会引发异常。

GetContentStream(Uri)

返回位于指定 Uri 的内容数据文件的资源流(请参阅 WPF 应用程序资源、内容和数据文件)。

GetCookie(Uri)

为由 Uri 指定的位置检索 Cookie。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetRemoteStream(Uri)

返回位于指定 Uri 的源站点数据文件的资源流(请参阅 WPF 应用程序资源、内容和数据文件)。

GetResourceStream(Uri)

返回位于指定 Uri 的资源数据文件的资源流(请参阅 WPF 应用程序资源、内容和数据文件)。

GetType()

获取当前实例的 Type

(继承自 Object)
LoadComponent(Object, Uri)

加载位于指定统一资源标识符 (URI) 的 XAML 文件,并将其转换为由 XAML 文件的根元素指定的 对象的实例。

LoadComponent(Uri)

加载位于指定统一资源标识符 (URI) 的 XAML 文件,并将其转换为由 XAML 文件的根元素指定的 对象的实例。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
OnActivated(EventArgs)

引发 Activated 事件。

OnDeactivated(EventArgs)

引发 Deactivated 事件。

OnExit(ExitEventArgs)

引发 Exit 事件。

OnFragmentNavigation(FragmentNavigationEventArgs)

引发 FragmentNavigation 事件。

OnLoadCompleted(NavigationEventArgs)

引发 LoadCompleted 事件。

OnNavigated(NavigationEventArgs)

引发 Navigated 事件。

OnNavigating(NavigatingCancelEventArgs)

引发 Navigating 事件。

OnNavigationFailed(NavigationFailedEventArgs)

引发 NavigationFailed 事件。

OnNavigationProgress(NavigationProgressEventArgs)

引发 NavigationProgress 事件。

OnNavigationStopped(NavigationEventArgs)

引发 NavigationStopped 事件。

OnSessionEnding(SessionEndingCancelEventArgs)

引发 SessionEnding 事件。

OnStartup(StartupEventArgs)

引发 Startup 事件。

Run()

启动 Windows Presentation Foundation 应用程序。

Run(Window)

启动 Windows Presentation Foundation 应用程序并打开指定窗口。

SetCookie(Uri, String)

为由 Uri 指定的位置创建一个 Cookie。

Shutdown()

关闭一个应用程序。

Shutdown(Int32)

关闭将指定退出代码返回给操作系统的应用程序。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
TryFindResource(Object)

搜索指定资源。

VerifyAccess()

强制调用线程具有此 DispatcherObject 的访问权限。

(继承自 DispatcherObject)

事件

Activated

当应用程序成为前台应用程序时发生。

Deactivated

当应用程序停止作为前台应用程序时发生。

DispatcherUnhandledException

在异常由应用程序引发但未进行处理时发生。

Exit

在应用程序关闭且无法取消之前发生。

FragmentNavigation

当应用程序中的导航器开始导航到内容片段时发生;如果所需片段位于当前内容中,则导航将立即发生;如果所需片段位于不同内容中,则加载源 XAML 内容后,将立即发生导航。

LoadCompleted

在已经加载、分析并开始呈现应用程序中的导航器导航到的内容时发生。

Navigated

在已经找到应用程序中的导航器要导航到的内容时发生,尽管此时该内容可能尚未完成加载。

Navigating

在应用程序中的导航器请求新导航时发生。

NavigationFailed

在应用程序中的导航器在导航到所请求内容时出现错误的情况下发生。

NavigationProgress

在由应用程序中的导航器管理的下载过程中定期发生,以提供导航进度信息。

NavigationStopped

在调用应用程序中的导航器的 StopLoading 方法时发生,或者当导航器在当前导航正在进行期间请求了一个新导航时发生。

SessionEnding

当用户通过注销或关闭操作系统来结束 Windows 会话时发生。

Startup

在调用 Run() 对象的 Application 方法时发生。

显式接口实现

IQueryAmbient.IsAmbientPropertyAvailable(String)

查询当前范围中是否有指定的环境属性。

适用于

线程安全性

Visual Basic 中的公共 static (Shared) 此类型的成员是线程安全的。 此外, FindResource(Object)TryFindResource(Object) 方法以及 PropertiesResources 属性是线程安全的。

另请参阅