为了账号安全,请及时绑定邮箱和手机立即绑定

WPF中的Window初始化的事件先后顺序和作用都是什么?高手帮忙(懂WPF的都进来瞅瞅)

WPF中的Window初始化的事件先后顺序和作用都是什么?高手帮忙(懂WPF的都进来瞅瞅)

慕尼黑8549860 2018-12-06 21:00:04
最近看MSDN中WPF概述的时候有疑惑,当我们在Startup事件中显示一个Window1的窗口的时候,那么就执行窗体的构造函数,这里我想问下所谓的InitializeComponent()事件和Winform里的InitializeComponent事件是不是作用相同,那么所谓的Initialized事件由是干什么的,二者都是初始化,那么初始化的作用范围又是什么呢?经我测试Initialized事件在InitializeComponent()事件之前调用,而对于数据绑定,样式使用又是在上面的两个事件中发生还是load事件完成呢?希望高手能给我解惑!!!!小弟这里有礼了!!!!
查看完整描述

8 回答

?
反对 回复 2019-01-21
?
四季花海

TA贡献1811条经验 获得超5个赞

WPF 程序跟WinForm程序一样,都需要一个启动类型:

WinForm 下面是 Program.cs ;WPF 是Application

Application 实例化后会创建一个Window 窗口。

Window 构造函数 调用 InitializeComponent() 来初始化窗口内容,跟WinForm 中的一样。

查看完整回答
反对 回复 2019-01-21
?
Qyouu

TA贡献1786条经验 获得超11个赞

那Initialized事件的作用呢,又有什么用呢?
查看完整回答
反对 回复 2019-01-21
?
慕仙森

TA贡献1827条经验 获得超7个赞

这个是Window 初始化完成后触发的事件,你可以注册该事件,在初始化完成了,做自己的处理,比如,加载数据、附加样式等等,
查看完整回答
反对 回复 2019-01-21
?
UYOU

TA贡献1878条经验 获得超4个赞

InitializeComponent() 是个方法,做初始化的。Window 的构造函数里面调用InitializeComponent()方法来做初始化元素的操作,完成初始化后,InitializeComponent()方法内部触发Initialized 事件。所以必须在InitializeComponent() 方法之前注册该事件。而Load 事件就没这个限制了。
查看完整回答
反对 回复 2019-01-21
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

Window 有几个重要的事件:他们调用的顺序是: Window.Initialized Window.Activatied Window.Loaded Window.ContentRendered Window.DeActivatied Window.Closing Window.UnLoad Window.Closed Window.Activatied可能会与Window.DeActivatied 切换多次(窗体切换的时候发生)
查看完整回答
反对 回复 2019-01-21
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

很感谢你的回答,让我知道了原理
查看完整回答
反对 回复 2019-01-21
  • 8 回答
  • 0 关注
  • 631 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信