WPF中Application.Current的使用

原文:WPF中Application.Current的使用

WPF程序对应一个Application对象,当前的Application对象可以通过Application.Current获取,通过获取到的Application对象,我们可以做以下的事情:

Application.Current.FindResource("资源名");//获取程序中定义的资源
Application.Current.MainWindow;//获取程序中定义的主窗体
Application.Current.Properties["MyProperty"];//获取或设置应用范围的属性
Application.Current.Shutdown();//终止当前程序
Application.Current.ShutdownMode = ShutdownMode.OnLastWindowClose ;//设置程序关闭的方式
//OnLastWindowClose —— 最后一个窗体关闭时关闭程序
//OnMainWindowClose —— 主窗体关闭时关闭程序
//OnExplicitShutdown —— 需要显示调用Application.Current.Shutdown()去关闭程序,否则程序将在后台继续运行
Application.Current.Windows;//获取程序中运行的所有窗体
//一般主窗体会是第一个运行的窗体,因此此时Application.Current.Windows[0]等同于Application.Current.MainWindow

原文地址:https://www.cnblogs.com/lonelyxmas/p/9589369.html

时间: 2024-10-11 01:53:59

WPF中Application.Current的使用的相关文章

WPF中的Application类。

原文:WPF中的Application类. Application对象用的名称空间是system.windows 1.手动创建Application对象步骤. 1.1).把项目中的App.Xaml文件从项目中排除. 1.2).新建Startup类. 1.3).在类中声明静态的.无返回值的Main方法. 1.4).在方法中创建application对象和窗口对象. public class Startup { [STAThread] //指定应用程序的 COM 线程模式是单线程单元(STA) st

浅析C#(WPF)中的Application类

Application类 封装WFP应用程序. 命名空间:System.Windows 语法:public class Application : DispatcherObject, IQueryAmbient 可以看到Application继承了DispatcherObject类和IQueryAmbient接口. 首先看一下DispatcherObject类 DispatcherObject类 表示与Dispatcher关联的对象 命名空间:System.Windows.Threading 语

六,WPF的Application类

Application.ShutdownMode属性:通过,只要有一个窗口还没有关闭,Application类就保持应用程序处于有效状态,如果这不是所期望的行为,就可以调整该属性. 应用程序事件 Application提供了为数不多的几个非常有用的事件,如下图所示: 有两种选择用于处理事件:在XAML中使用事件特性的方式关联事件处理程序,或重写相应的受保护方法,当重写应用程序方法时,推荐首先调用基类的实现,通常,基类的实现只是引发相应的应用程序事件. 初始界面(SplashScreen) WPF

WPF入口Application

1.WPF和 传统的WinForm 类似, WPF 同样需要一个 Application 来统领一些全局的行为和操作,并且每个 Domain (应用程序域)中只能有一个 Application 实例存在.和 WinForm 不同的是 WPF Application 默认由两部分组成 : App.xaml 和 App.xaml.cs,将定义和行为代码相分离.当然,这个和WebForm 也比较类似.XAML 从严格意义上说并不是一个纯粹的 XML 格式文件,它更像是一种 DSL(Domain Spe

WPF 中style文件的引用

原文:WPF 中style文件的引用 总结一下WPF中Style样式的引用方法: 一,内联样式: 直接设置控件的Height.Width.Foreground.HorizontalAlignment.VerticalAlignment等属性.以设置一个Botton控件的样式为例,如: 复制代码 <Grid x:Name="ContentPanel" > <Button Content="Button" Name="btnDemo"

Windows 消息循环(2) - WPF中的消息循环

接上文: Windows 消息循环(1) - 概览 win32/MFC/WinForm/WPF 都依靠消息循环驱动,让程序跑起来. 本文介绍 WPF 中是如何使用消息循环来驱动程序的. 4 消息循环在 WPF 中的应用 4.1 引入 只听说过 Dispatcher ,哪里来的消息循环? 先瞧一眼 WPF 启动运行堆栈: 可以发现 PushFrameImpl 这个方法. 去看其源码,就发现了熟悉的消息循环 : 可以理解为:Dispatcher 对消息循环的操作进行了"封装" . 那,Di

如何监视 WPF 中的所有窗口,在所有窗口中订阅事件或者附加 UI

原文:如何监视 WPF 中的所有窗口,在所有窗口中订阅事件或者附加 UI 由于 WPF 路由事件(主要是隧道和冒泡)的存在,我们很容易能够通过只监听窗口中的某些事件使得整个窗口中所有控件发生的事件都被监听到.然而,如果我们希望监听的是整个应用程序中所有的事件呢?路由事件的路由可并不会跨越窗口边界呀? 本文将介绍我编写的应用程序窗口监视器,来监听整个应用程序中所有窗口中的路由事件.这样的方法可以用来无时无刻监视 WPF 程序的各种状态. 其实问题依旧摆在那里,因为我们依然无法让路由事件跨越窗口边界

在WPF中开启摄像头扫描二维码(Media+Zxing)

原文:在WPF中开启摄像头扫描二维码(Media+Zxing) 近两天项目中需要添加一个功能,是根据摄像头来读取二维码信息,然后根据读出来的信息来和数据库中进行对比显示数据. 选择技术Zxing.WPFMediaKit.基本的原理就是让WPFmediaKit来对摄像头进行操作,然后Zxing这个库对图片进行分析大致就是这样. 在后台中定义了定时器,用于解析当前摄像头的图像,然后直接读数据. 需要注意的是一定要引入 using WPFMediaKit.DirectShow.Controls; us

在WPF中使用fortawesome之类的字体图标

我之前在博客中介绍过几个矢量图库网站,在WPF程序中,一般接触到的矢量图标资源有XAML.SVG.字体这三种格式.XAML是标准格式就不说了,SVG并不是直接支持的,不过微软提供了Expression Design可以非常方便我们将其转换为XAML格式的资源.而对于字体,虽然WPF是直接支持的,但由于字体图标其特殊性,要将其显示为图标还是需要费点劲的.本文这里就以Font-Awesome为例,介绍一下如何在WPF中使用字体图标. 首先添加一个样式,为了使用方便,建议直接做为全局样式: <Styl