2024年3月13日发(作者:)
1、WPF体系结构
a)WPF(WindowsPresentationFoundation)Windows表现层
b)历史变迁
i.C++/VB---2003年之前----与Sun竞争
平台(C#、VB、C++)C#(C->C++->C#/CSharp)
iii.开发工具VisualStudio2003->vs2005->vs2008->vs2010
iv.开发语言C#1.0(CLR)->C#2.0(匿名、泛型)->C#3.0(LinQ、Lambda)->C#4.0
v.运行时环境DotNetFramework1.1->2.0->3.5->…(托管代码处理GDI,调用底层的OS下的
API(如))
vi.推出背景:配合下一代OS技术(WindowSeven/Vista)(非托管代码处理DirectX,矢量技术,
性能受影响)
vii.与WindowForm孑然不同
c)见图:绘图使用DirectX技术
2、WPF应用程序管理、事件、生命周期
a)Application启动
p事件订阅加载方法
p+=pEventHandler(ation_Startup);
ii.设定Application的StartupUri
b)关闭
i.当我们启动了很多窗口的时候,这些窗口继宿在主线程内,当所有窗口关闭时,应用程序
自动退出
wn();不同于();
iii.常见事件
iv.生命周期见图
v.源代码MSIL机器语言(先编译后解释)
3、WPF窗体与导航—基于代码
a)项目常见设置
中设置产品信息(描述,版本…)
ii.设置产品图标*.ico,程序集名
b)常见属性、方法、事件
i.属性
:标题
:窗口
Mode:是否能最大化、最小化、拉伸窗口边框
Style:设置窗口的外部样式
StartupLocation:窗口启动后出现的位置
y:设置透明度
t:窗口将永远置于最顶层.
、Top、Width、Height:设置窗口呈现的坐标以及大小
und/Background:设置前、背景色
---:字体的相关信息
led:设置对象是否启用/禁用
:任何对象隐藏的属性,可用于保存一些额外的信息
ii.方法
()
alog():窗口的返回值由DialogResult来设置
3.A窗口向B窗口传递值:
a)在B窗口中设置一个属性,然后A窗口中实例化B时,赋值给B中的该属性(在多窗口中
传值不频繁的时候使用,以及传递的数据并不多的时候)
b)定义一个静态类,以及若干静态成员,然后通过get/set访问器来实现获取或设置值(在多
窗口之间频繁的传递值,以及窗口之间传递值过多时)
iii.事件
Parameters获取系统的环境设置信息
v.
c)模式与非模式窗口
d)基于页面的用户界面
类似于java中的Applet程序,在一个沙箱内部运行WPF的程序,对外部数据的访问受限
制,从而达到安全目的。
与SilverLight的区别:SilverLight利用页面插件来工作的,XBP则是运行在CLR之上的程序.
e)导航服务
i.页面跳转的方式:
1.内部标签
2.导航服务来实现跳转
ii.其他的设计与WPF下的设计雷同
f)不规则窗体
i.绘图标签
ii.窗体过滤
g)消息框
(x,y,z,m,n)
4、XAML与XML
a)XAML数据
是XML的子集,遵循了XML的语言结构
是可拓展的标记语言,也是元语言,XAML就是在XML的基础上拓展而来
基本规范:
1.标记是成对出现的.<标记>数据标记>
2.标记区分大小写
3.只有唯一的根元素
4.标记支持嵌套,呈现出父子元素关系
5.每一个元素的名称、属性名都是有意义的
6.如果元素内部无数据,那么
中Window的子级元素仅有一个
8.命名空间:避免了元素和属性的重名问题
a)xmlns:digital=""定义了一个命名空间的缩写digital指代
命名空间
b)xmlns="_"定义了一个默认命名空间,当元素未指定命名空间的时


发布评论