wpf经典教程

3星(超过75%的资源)
所需积分/C币:37 2013-08-26 08:10:08 1.52MB PDF
85
收藏 收藏
举报

WPF 体系结构 .......................................................................................................................................................... 3 WPF 应用程序管理 .................................................................................................................................................. 5 一、WPF 应用程序由System.Windows.Application 类进行管理 ................................................................. 5 二、创建WPF 应用程序 ................................................................................................................................. 5 三、应用程序关闭 ........................................................................................................................................... 6 四、Application 对象的事件 ........................................................................................................................... 7 五、WPF 应用程序生存周期 .......................................................................................................................... 9 WPF 窗体 ................................................................................................................................................................ 10 一、窗体类 ..................................................................................................................................................... 10 1、XAML 文件....................................................................................................................................... 10 2、后台代码文件 ................................................................................................................................... 10 二、窗体的生存周期 ......................................................................................................................................11 1、显示窗体 ............................................................................................................................................11 2、关闭窗体 ......................................................
本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 体系结构 WPF的基础的休系结构,所引用的 Assembly如下图所示 Presentation framework.dll The Managed I Presentation Core dl WindowsBase d ll WPF API milcore.dll國 WindowsCodecsdI! The Med ia Integration Layer Direct3D User32 关系图中的 Presentation Framework、 Presentation Core和 milcore是WPF的主要 代码部分。在这些组件中,只有一个是非托管组件- micore。 milcom是以非托管代码编 写的,目的是实现与 DirectⅩ的紧密集成。WPF中的所有显示是通过 Directx引擎完成 的,可实现高效的硬件和软件呈现。WPF还要求对内存和执行进行精确控制。 milcore中 的组合引擎受性能影响关系大,需要放弃CLR的许多优点来提高性能。 在WPF中常用的的控件类继承结构如下图所示 System Object System. Windows. Threading. DispatcherObject System. Windows. ependencyobject System. Windows, Media, Visual System. Windows, UIElement System. Windows. FrameworkElement System. Windows Controls Decorator System. Windows Controls Control System. Windows Controls Image System. Windows, Controls. ContentControl System. Windows Controls MediaElement System. Windows Controls. Items Control System. Windows Controls Panel System. ndows Shapes Shape 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 System. object类:在.Net中所有类型的根类型 System. Windows. Threading. Dispatcherobject类:WPF中的大多数对象是从 Dispa tcherobject派生的,这提供了用于处理并发和线程的基本构造。wPF基于调度程序实现 的消息系统 System. Windows. Dependencyobject类:表示一个参与依赖项属性系统的对象。 System. Windows. Media, Visual类:为WPF中的呈现提供支持,其中包括命中测试、坐 标转换和边界框计算。 System Windows.∪IE| ement类: UIEJement是WPF核心级实现的基类,该类建立在 Windows presentation foundation(WPF)元素和基本表示特征基础上。 System. Windows. FrameworkElement x: 2 Windows Presentation Foundation (wPF)元素提供WPF框架级属性集、事件集和方法集。此类表示附带的WPF框架级实 现,它是基于由 UIElement定义的WPF核心级API构建的 System. Windows. Controls, contro类:表示用户界面(UI)元素的基类,这些元素使 用 ControlTemplate来定义其外观。 System. Windows. Controls. Contentcontrol类:表示包含单项内容的控件 System. Windows. Controls. .Items contro|类:表示一个可用于呈现项的集合的控件 System. Windows Controls. Decorator类:提供在单个子元素(如 Border或 Viewbo X)上或周围应用效果的元素的基类 System. Windows. Controls Image类:表示显示图像的控件。 System. Windows. Controls. Mediaelement类:表示包含音频和/或视频的控件。 System. Windows Controls. Panel类:为所有 Panel元素提供基类。使用 Panel元素 在 Windows presentation foundation(WPF)应用程序中放置和排列子对象 System. Windows. Sharps. Sharp类:为 Ellipse、 Polygon和 Rectangle之类的形状 元素提供基类。 详细的有关WPF的控件类及其使用请参考MSDN文档 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 应用程序管理 WPF应用程序由 System. Windows. Application类进行管理 无内容 、创建WPF应用程序 创建WPF应用程序有两种方式 1、 Visua| Studio和 Expression Blend默认的方式,使用App.Xam文件定义启动应用 程序 App. xam文件的内容大致如下 1: <Application x: Class=WpfApplicationLifeCycle App 2: xmins=httP: //schemas. microsoft com/winfx/2006/xam1/presen tation xmilns:x=http://schemas.microsoftcom/winfx/2006/xaml StartupUri=Window. xaml> <Application, Resources> </Application Resources> /: </Application> 其中 StartupUri指定启动的WPF窗体 2、可以自已定义类,定义Main方法实现对WPF应用程序的启动 在项目中添加一个类,类的代码如下,在项目选项中,设定此类为启动项 using Systemi 2: using System. Windows 3 namespace WpfApplicationLifeCycle 56789 pub1 ic class Ma⊥nC1aSS ISTAThread] static void Main() 10: 11: //定义app1 i cation对象 12: Application app new Application ()i 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 13: 14: //方法一:调用Run方法,参数为启动的窗体对象 15: Window2 win new Window2()i 16: app. Run(win)i 17: 18: //方法二:指定App1 l cation对象的 MainWindow属性为启动窗体, 调用无参数的Run方法 19 //Window2 win= new Window2()i 20: //app. Mainwindow win; 21: //win. Show( //此处必须有win.show(),否则不能 显示窗体 22 //app. Run()i 23: 24 //方法三: 25: //app. StartupUri new Uri("Window2. xaml", UrikindR elative)i 26: //app. Run(i 27: 28: 29:} 应用程序关闭 应用程序关闭时的策略由 Shutdown Mode属性指定,其类型为 System Window s ShutdownMode枚举类型,其枚举成员有: OnLastwindowclose(默认值):当应用程序中的最后一个窗体关闭时或调用 Applic ation对象的 Shutdown(方法时,应用程序关闭; On Main Windowclose:当主窗体(即启动窗体)关闭时或调用 Application对象的s putdown()方法时,应用程序关闭。(类似于c#的 Windows应用程序的关闭模式); OnExplicitshutdown:只有在调用 Application对象的 Shutdown(方法时,应用 程序才会关闭 更改的时候,可以直接在 App.xam中更改 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 1: <Application x: Class=WpfApplicationLifeCycle App 2 xmins=httP://schemas. microsoft com/winfx/2006/xaml/presen tation 3: xmlns:x=http://schemas.microsoftcom/winfx/2006/xaml 4 StartupUri=Windowl xaml ShutdownMode= OnExplicitshutdown"> 6: <Application Resources> 7 K/Application Resources> 8: </Application> 也可以在代码文件( App. xaml.cs)中更改 1: Application app =new Application()i 2: Window2 win new Window2(i 4://更改关闭模式必须要在调用app.Run()方法之前 5: app. ShutdownMode ShutdownMode OnExplicitshutdown; 6: app. Run(win)i 四、 Application对象的事件 名称 说明 Activated 当应用程序成为前台应用程序时发生。 Deactivated 当应用程序停止作为前台应用程序时发生。 DispatcherUnhandledException异常由应用程序引发但未进行处理时发生。 Exit 恰好在应用程序关闭之前发生,且无法取消。 FragmentNavigation 当应用程序中的导航器廾始导航个某个内容片断时发生, 如果所需片段位于当前内容中,则导航会立即发生;或者, 如果所需片段位于不同内容中,则导航会在加载了源 XAML内容之后发生。 LoadCompleted 在已经加载、分析并开始呈现应用程序中的导航器导航到 的内容时发生。 Navigated 在已终找到应用程序中的导航器要导航到的内容时发生 尽管此时该内容可能尚未完成加载。 Navigating 在应用程序中的导航器请求新导航吋发生。 NAvigation Failed 在应用程序中的导航器在导航到所请求内容时出现错误 的情况下发生。 Navigation Progress 在由应用程序中的导航器管理的下载过程中定期发生,以 提供导航进度信息。 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 avigation Stopped 在调用应用程序中的导航器的 StopLoading方法时发 生,或者当导航器在当前导航止在进行期间请求了一个新 导航时发生。 Session Ending 在用户通过注销或关闭操作系统而结束 Windows会话 时发生。 Startup 在调用 Application对象的Run方法时发生。 应用程序的事件处理可以: 1、在 App.Xam中做事件的绑定,在 App. xaml.CS文件中添加事件的处理方法 在 App. xam文件中 <Application x: Class=WpfApplicationLifeCycle App 2 xmins=htTp: //schemas. microsoft com/winfx/2006/xam1/presen tation 345 xmlns:x=http://schemas.microsoft.com/winfx/2006/xanl StartupUri=Window. xaml Startup=Application startup"> <Application Resources> : </Application Resources> 8: </Application> 在 App. xaml.CS文件中 1: using System. Windows; 2: 3: namespace WpfApplicationLifeCycle 4567 ///<summary> ///Interaction logic for App. xaml ///</summary> 8: public partial class App Application 9 10 private void Application Startup(object sender, Startup EventArgs e) 11: 12 //定义应用程序启动时要处理的内容 111 345 在自定义的类中可以做止常的的事件绑定: 1: [STAThread] 2: static void Main() 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 //定义App1 ication对象 5: Application app= new Application()i Window2 win new Window2( 7 8 /添加事件的绑定 9 app. Startup + new StartupEventHandler(app Startup)i 10: 11: app. Run(win)i 12:} 13 14: static void app Startup (object sender, StartupEventArgs 16 Window2 win= new Window2O win. Show() win. button. Content =YoU 17:} 主窗体载入时,会在 Window2里面定义的 button1上面就会显示YOU! 五、WF应用程序生存周期 独立应用程序 入口点 应用程序对象 阿用程序代码 s Run《 启动 激活 未处理 已停用 未处理 s "J DIspa tcherUnhandledException 的异常 已处理 s SessionEnding 未取消 已取 s 退出 shutdown 正常关机 本文来自网络由大胡子制作版权归原作者所有如果你有的好资料可以联系我 窗体 窗体类 在 Visual studio和 Expression Blend中,自定义的窗体均继承 System. Wil dows. window类(类型化窗体)。定义的窗体由两部分组成 1、XAML文件 1: <Window 2 xmins="htTp://schemas.microsoft.com/winfx/2006/xaml/presen tation 345 xmlns:x=http://schemas.microsoftcom/winfx/2006/xaml x: Class=WpfWindow. BasicWindow x: Name=window Title= BasicWindow 789 Width=300 Height=200> <Canvas> <Button x: Name="btnMessage"Width=79 Height=24" Cont ent=OK 10: Canvas. Left=172 Canvas Top=93 Click=btnMessage Cli ck"/> 11: <TextBox x: Name=ltxtvalue Width=215 Height=25 12 Canvas. Left=36 Canvas Top=48 Text= TextWrapping- W≌ap 13: </Canvas> 14: </window> 2、后台代码文件 1: using System, 2: using System. Windows 3 4: name space Wpfwindow 6 public partial class basicWindow Window 7 8 public basicWindow( 9 10 this InitializeComponent ()i 11 12

...展开详情
试读 83P wpf经典教程
立即下载 身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
_Tiny 下下来了, 稍微看了下, 有点点用
2020-09-18
回复
心灵语 非常不错。。
2019-09-06
回复
twilightnewmoon86 感谢分享,学习学习
2019-06-10
回复
silencerole 挺好的资源,学习中
2019-04-24
回复
GDUTPZR 很好用的东西
2019-02-11
回复
qq_25735401 还不错,感谢分享
2018-11-17
回复
jota 资源还阔以
2018-11-09
回复
xuhonk 非常好的教程 谢谢
2018-10-30
回复
funnyinfo 下下来了, 稍微看了下, 有点点用
2018-10-30
回复
往事随风随风 谢谢楼主资源,非常感谢分享。
2018-09-12
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 签到新秀

  • 分享王者

关注 私信
上传资源赚钱or赚积分
最新推荐
wpf经典教程 37积分/C币 立即下载
1/83
wpf经典教程第1页
wpf经典教程第2页
wpf经典教程第3页
wpf经典教程第4页
wpf经典教程第5页
wpf经典教程第6页
wpf经典教程第7页
wpf经典教程第8页
wpf经典教程第9页
wpf经典教程第10页
wpf经典教程第11页
wpf经典教程第12页
wpf经典教程第13页
wpf经典教程第14页
wpf经典教程第15页
wpf经典教程第16页
wpf经典教程第17页

试读结束, 可继续读3页

37积分/C币 立即下载