WPF专业编程指南

副标题:无

作   者:李应保著

分类号:

ISBN:9787121100116

微信扫一扫,移动浏览光盘

简介

   《WPF专业编程指南》是一本WPF编程的专业参考书,全书通过大量的   实例深入阐述了WPF中的传递事件、传递命令、相关属性、附加属性、逻辑   树和视觉树等基本概念;介绍了各种画笔、画刷的使用方法;深入讨论了   WPF中的各种控件以及这些控件在窗口或页面上的排版,并进而阐述了控件   的风格和模板及数据绑定等相关技术。    本书对WPF中的图形系统及图形和排版的变换原理也进行了深入的探讨   ,并在此基础上讨论了WPF中的动画技术。多媒体不是WPF专有的技术,但   本书介绍了在WPF中使用多媒体的实用技术。用户控件和自定义控件是WPF   中比较深入的内容,本书最后两章对这一课题进行了深层次的研究,通过   对Ribbon控件的开发,不仅可以了解开发用户控件和自定义控件的方法,   而且可以体会WPF项目的组织及多种WPF技术细节的综合运用。    本书可供.NET桌面及互联网应用程序的开发人员、项目管理人员或准   备进入这一领域的相关工程技术人员,以及大专院校相关专业的师生参考   学习。   

目录

第一篇 wpf编程基础

第1章 wpf应用程序 2

1.1 wpf应用程序的创建 2

1.2 dos窗口 3

1.3 wpf应用程序的启动和终止 4

1.4 输入参数 5

1.5 在xaml中创建application 7

1.6 窗口大小 10

1.7 互联网应用程序 10

1.8 应用程序的异常处理 11

1.9 应用程序中的资源 12

1.10 应用程序的发布 13

1.11 wpf开发环境 14

1.12 本章小结 15

第2章 xaml语言 16

2.1 xaml是一种界面描述语言 16

2.2 xaml的根元素 17

2.3 xaml命名空间(namespace) 17

2.4 xaml和代码分离技术(code behind) 18

2.5 子元素 19

.2.6 相关属性(dependency property) 20

2.7 附加属性(attached property) 21

2.8 xaml标记扩展 21

2.8.1 静态资源扩展(staticresourceextension) 22

2.8.2 动态资源扩展(dynamicresourceextension) 23

2.8.3 数据绑定扩展(binding) 24

2.8.4 相对数据源扩展(relativesource) 24

2.8.5 模板绑定(templatebinding) 25

2.8.6 x:type扩展 26

2.8.7 x:static扩展 26

2.8.8 x:null扩展 26

2.8.9 x:array扩展 26

2.9 本章小结 27

第3章 wpf排版 28

3.1 排版基础 28

3.2 堆积面板(stackpanel) 29

3.3 wrappanel 34

3.4 停靠面板(dockpanel) 35

3.5 表格式面板(grid) 39

3.5.1 设定ui元素在grid中的位置 40

3.5.2 设定grid行或列的尺寸 40

3.5.3 元素横跨多个行列时的设定 41

3.5.4 在grid中保持多行或多列大小的一致性 44

3.6 uniformgrid 46

3.7 画布面板(canvas) 47

3.8 本章小结 48

第4章 wpf中的属性系统 49

4.1 clr属性 49

4.2 相关属性的概念 50

4.2.1 相关属性的传递 50

4.2.2 wpf对相关属性的支持 51

4.3 自定义相关属性 52

4.4 附加属性 58

4.5 本章小结 67

第5章 画笔和画刷 68

5.1 wpf中的颜色 68

5.2 画刷 75

5.2.1 实心画刷(solidcolorbrush) 76

5.2.2 梯度画刷(gradientbrush) 77

5.2.3 线性梯度画刷(lineargradientbrush) 77

5.2.4 圆形梯度画刷(radialgradientbrush) 80

5.2.5 自制画刷(drawingbrush) 81

5.2.6 粘贴模式(tilemode) 82

5.2.7 伸展方式(stretch) 83

5.2.8 图像画刷(imagebrush) 83

5.2.9 控件画刷(visualbrush) 85

5.3 画笔 88

5.4 本章小结 95



第二篇 wpf专业程序员必备

第6章 wpf控制 98

6.1 wpf控件概述 98

6.2 内容控件(content control) 100

6.2.1 框架控件(frame) 100

6.2.2 wpf按钮(button) 101

6.2.3 拨动按钮(togglebutton) 104

6.2.4 checkbox控件 104

6.2.5 radiobutton控件 104

6.2.6 重复按钮(repeatbutton) 105

6.2.7 带有标题栏的内容控件(headeredcontentcontrol) 106

6.2.8 分组框(groupbox) 107

6.2.9 伸展控件(expander) 109

6.2.10 标签控件(label) 110

6.2.11 为按钮设置热键 111

6.2.12 tooltip 113

6.2.13 scrollviewer 115

6.3 条目控件(items controls) 116

6.3.1 菜单(menu) 117

6.3.2 工具条(toolbar) 123

6.3.3 selector 126

6.3.4 组合框(combobox) 126

6.3.5 tabcontrol 129

6.3.6 列表框(listbox) 132

6.3.7 listview 135

6.3.8 状态条(statusbar) 138

6.3.9 树形控件treeview和treeviewitem 140

6.4 文本控件(text controls) 143

6.4.1 口令输入框(passwordbox) 143

6.4.2 文字输入框(textbox) 144

6.4.3 richtextbox 145

6.5 范围控件(range controls) 146

6.5.1 滚动条(scrollbar) 146

6.5.2 滑动条(slider) 147

6.5.3 进展条(progressbar) 152

6.6 本章小结 152

第7章 传递事件和传递命令系统 153

7.1 wpf中的元素树 153

7.2 传递事件(routed event) 165

7.2.1 routedeventargs 166

7.2.2 终止事件传播 166

7.2.3 处理传递事件 167

7.2.4 附加传递事件(attached routed event ) 168

7.3 考察传递事件 168

7.3.1 键盘事件的产生和传递 174

7.4 自定义传递事件 174

7.5 管理键盘和鼠标输入事件 182

7.5.1 键盘输入 182

7.5.2 鼠标输入 182

7.6 传递命令 184

7.6.1 icommand接口 186

7.6.2 icommandsource接口 186

7.6.3 commandtarget 186

7.6.4 命令绑定(commandbinding) 186

7.6.5 传递命令(routed command) 187

7.6.6 wpf命令仓库(command repository) 187

7.7 本章小结 190

第8章 资源 191

8.1 资源定义及其类型 191

8.2 统一资源标识(unified resource identifier) 192

8.3 .net开发平台对资源国际化的支持 196

8.3.1 winform下的资源管理 197

8.3.2 用xaml创建本地资源 200

8.4 wpf元素中定义的资源 202

8.4.1 静态资源(staticresource) 203

8.4.2 资源的作用范围 204

8.4.3 静态扩展标识(static markup extension) 205

8.4.4 动态资源扩展标识(dynamicresource markup extension) 208

8.5 本章小结 210

第9章 风格 211

9.1 style类 211

9.2 setters 211

9.3 targettype 215

9.4 basedon 218

9.5 触发器(triggers) 220

9.5.1 使用单一条件的触发器 221

9.5.2 使用多个条件的触发器 222

9.5.3 使用数据触发器(datatrigger) 223

9.6 风格中的资源 225

9.7 issealed 227

9.8 把风格定格定义在单独的文件中 227

9.9 在frameworkcontentelement中使用风格 228

9.10 再谈setter属性 229

9.11 本章小结 230

第10章 模板 231

10.1 模板概述 231

10.2 控件模板 232

10.2.1 在控件中使用模板 232

10.2.2 在资源中使用模板 234

10.2.3 在控件模板中使用targettype 235

10.2.4 在模板中显示控件的内容 236

10.2.5 在模板中使用contentpresenter 237

10.2.6 模板中元素名name属性 239

10.2.7 在模板中绑定控件的其他属性 239

10.2.8 使用模板显示电力系统的断路器和刀闸开关 240

10.2.9 在风格中使用模板 242

10.2.10 获取wpf控件的模板 243

10.3 数据模板(datatemplate) 244

10.3.1 我们所面临的问题 244

10.3.2 定义数据模板 247

10.3.3 在资源中使用数据模板 248

10.3.4 数据模板触发器 249

10.3.5 根据数据属性选择相应的模板 250

10.3.6 在数据模板中使用类型转换技术 253

10.4 itemspaneltemplate 258

10.5 层次结构数据模板(hierarchicaldatatemplate) 259

10.6 本章小结 262

第11章 数据绑定(data binding) 263

11.1 数据绑定概述 263

11.2 最简单的数据绑定——从界面元素到界面元素 264

11.2.1 一对一数据绑定 264

11.2.2 在c#中,实现数据绑定 265

11.2.3 对不是frameworkelement和frameworkcontentelement元素实现数据绑定 266

11.3 使用不同的绑定模式 266

11.4 动态绑定 267

11.5 最简单的数据绑定——从.net对象到界面元素 268

11.6 datacontext 271

11.7 控制绑定时刻 272

11.8 开发自己的ivalueconverter 273

11.9 在数据绑定中加入校验 275

11.9.1 开发业务规则类 276

11.9.2 在绑定中添加任意多个业务规则 279

11.9.3 在控件上显示校验信息 279

11.9.4 触发错误处理事件 280

11.9.5 清除控件上的错误信息 282

11.10 对集合对象的绑定 283

11.10.1 使用displaymemberpath属性 286

11.10.2 显示当前条目 286

11.10.3 遍历集合中的记录 288

11.10.4 增加或删除记录 290

11.10.5 对集合对象分组 293

11.10.6 对集合对象排序 294

11.10.7 对集合对象过滤 295

11.11 数据源 296

11.11.1 xml数据源 296

11.11.2 .net对象数据源 301

11.12 层次结构数据的绑定 303

11.13 本章小结 303

第12章 窗口对话框和打印 304

12.1 窗口(window) 304

12.1.1 窗口的状态变化和事件 304

12.1.2 确定视窗的位置 309

12.1.3 确定视窗的大小 310

12.1.4 视窗状态属性(windowstate) 310

12.1.5 视窗大小模式(resizemode) 310

12.1.6 视窗风格(windowstyle) 311

12.2 网页(page) 311

12.2.1 创建网页 312

12.2.2 keepalive属性 312

12.2.3 navigationservice属性 312

12.2.4 showsnavigationui属性 313

12.3 浏览窗口(navigationwindow) 313

12.3.1 使用统一风格 314

12.3.2 设置navigationwindow的标题 314

12.3.3 浏览网页 315

12.3.4 使用hyperlink类 315

12.3.5 使用navigationservice转到不同的网页 318

12.3.6 使用浏览日志转换到不同的网页 319

12.3.7 浏览窗口的浏览事件 319

12.4 对话框(dialogbox) 320

12.4.1 消息框(messagebox) 320

12.4.2 通用对话框 320

12.4.3 自定义对话框 322

12.5 打印输出 323

12.5.1 xps 文档简介 323

12.5.2 创建xps文档 324

12.5.3 显示xps文档 328

12.5.4 打印 333

12.6 本章小结 333


第三篇 图形和动画

第13章 二维图形 336

13.1 wpf图形系统概述 336

13.1.1 统一编程模型 336

13.1.2 坐标系统 338

13.1.3 shape 和geometry 338

13.2 shape及其派生类 339

13.2.1 直线(line) 340

13.2.2 矩形(rectangle) 340

13.2.3 椭圆(ellipse) 341

13.2.4 折线(polyline) 341

13.2.5 多边形(polygon) 342

13.2.6 填充规则(fillrule) 342

13.2.7 路径(path) 343

13.3 geometry及其派生类 343

13.3.1 直线(linegeometry) 344

13.3.2 矩形(rectanglegeometry) 344

13.3.3 椭圆(ellipsegeometry) 344

13.3.4 几何图形组(geometrygroup) 345

13.3.5 合并图形(combinedgeometry) 346

13.3.6 几何路径(pathgeometry) 348

13.3.7 分段路径(pathsegment) 350

13.3.8 弧线(arcsegment) 350

13.3.9 直线段(linesegment) 352

13.3.10 折线段(polylinesegment) 353

13.3.11 柏之线(beziersegment) 353

13.3.12 多段柏之线(polybeziersegment) 354

13.3.13 二次柏之线(quadraticbeziersegment) 354

13.3.14 多段二次柏之线(polyquadraticbeziersegment) 355

13.3.15 迷你绘图语言 356

13.3.16 流几何图形(streamgeometry) 360

13.4 绘制(drawing) 361

13.4.1 使用drawingimage显示几何图形 362

13.4.2 使用drawingvisual来显示几何绘制 363

13.4.3 创建drawingvisual宿主 363

13.4.4 绘制几何图形 364

13.4.5 把drawingvisual对象加到frameworkelement中的视觉树和逻辑树中 364

13.4.6 选择视觉元素(visual hit testing) 366

13.4.7 简单选择判断 366

13.4.8 多个视觉元素的选择判断 367

13.4.9 视觉元素重叠时的选择判断 367

13.5 本章小结 368

第14章 图形转换 369

14.1 图形转换概述 369

14.2 项目管理器 370

14.3 旋转转换(rotatetransform) 376

14.4 位移转换(translatetransform) 378

14.5 缩放转换(scaletransform) 380

14.6 扭曲转换(skewtransform) 382

14.7 组合转换(transformgroup) 384

14.8 矩阵转换(matrixtransform) 385

14.8.1 矢量操作 385

14.8.2 h坐标系 386

14.8.3 位移转换矩阵 387

14.8.4 旋转转换矩阵 388

14.8.5 缩放转换矩阵 388

14.8.6 扭曲转换矩阵 389

14.8.7 矩阵操作 389

14.9 本章小结 394

第15章 动画 395

15.1 wpf中的动画 395

15.2 动画类继承树 396

15.3 一个简单的动画 397

15.4 控制动画 398

15.4.1 动画所用的时间(duration) 399

15.4.2 设定动画开始时间begintime 399

15.4.3 设定自动返回(autoreverse) 399

15.4.4 设定动画速度(speedratio) 400

15.4.5 加快和减慢动画(accelarationratio和decelarationratio) 400

15.4.6 设定动画的重复特性(repeatbehavior) 402

15.4.7 设定动画的终止状态(fillbehavior) 402

15.4.8 设定相关属性的动画范围(from和to) 402

15.4.9 设定相关属性的动画范围(by) 403

15.4.10 设定isadditive和iscumulative 属性 403

15.4.11 wpf动画的时间片类 403

15.5 故事板(storyboard) 404

15.5.1 使用故事板的一般格式 404

15.5.2 设定target和targetname 406

15.5.3 操作storyboard 406

15.6 keyframe 408

15.6.1 线性keyframe 409

15.6.2 非线性keyframe(spline keyframe) 412

15.6.3 离散keyframe(discrete keyframe) 414

15.7 本章小结 416

第四篇 开发wpf产品

第16章 多媒体技术及其应用 418

16.1 播放.wav声音格式的soudplayer和soundplayeraction 418

16.1.1 装载.wav文件 418

16.1.2 播放.wav文件 419

16.1.3 停止播放 419

16.1.4 在xaml中使用soundplayeraction 419

16.2 播放多种格式的声音和图像 420

16.2.1 播放模式 421

16.2.2 使用mediaplayer实例 422

16.2.3 使用mediaelement和mediatimeline实例 426

16.3 语音合成和语音识别 430

16.3.1 尝试windows vista的语音功能 431

16.3.2 使你的程序发音 432

16.3.3 promptbuilder和ssml 433

16.3.4 语音识别中的语法 434

16.4 本章小结 436

第17章 定制控件和排版 437

17.1 用户控件和自定义控件 437

17.2 创建用户控件(user control) 439

17.2.1 设计用户控件ui 439

17.2.2 开发支持用户控件ui的逻辑 442

17.3 创建自定义控件(custom control) 446

17.4 创建自定义排版(custom panel) 459

17.4.1 照片浏览器 461

17.5 本章小结 471

第18章 综合应用 472

18.1 ribbon界面概览 472

18.2 项目的组织 473

18.3 管理generic.xaml文件 475

18.4 开发自定义控件 476

18.4.1 自定义控件间的关系 476

18.4.2 ribbon按钮 477

18.4.3 ribbon分组(group) 483

18.4.4 ribbontabitem 492

18.4.5 ribbonapplicationmenuitem 493

18.4.6 ribbonapplicationmenu 495

18.4.7 ribbonqatoolbar 496

18.4.8 ribbonbar 497

18.4.9 ribbonwindow 498

18.4.10 支持不同皮肤 514

18.5 使用ribbon自定义控件实例 516

18.6 本章小结 525

参考文献 526


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

WPF专业编程指南
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon