图书介绍
WPF编程宝典 使用C# 2012和.NET 4.5 原书第4版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)麦克唐纳著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302327738
- 出版时间:2013
- 标注页数:932页
- 文件大小:222MB
- 文件页数:952页
- 主题词:Windows操作系统-程序设计;C语言-程序设计
PDF下载
下载说明
WPF编程宝典 使用C# 2012和.NET 4.5 原书第4版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第Ⅰ部分 基础知识3
第1章 WPF概述3
1.1 Windows图形演化3
1.1.1 DirectX:新的图形引擎4
1.1.2硬件加速与wPF4
1.2 WPF:高级API4
1.3分辨率无关性5
1.3.1 WPF单位6
1.3.2系统DPI7
1.3.3位图和矢量图形9
1.4 WPF体系结构10
1.5 WPF 4.5.13
1.5.1 WPF工具包14
1.5.2 Visual Studio 201214
1.6小结16
第2章 XAML17
2.1理解XAML17
2.1.1 WPF之前的图形用户界面17
2.1.2 XAML变体19
2.1.3 XAML编译19
2.2 XAML基础20
2.2.1 XAML名称空间21
2.2.2代码隐藏类22
2.3 XAML中的属性和事件24
2.3.1简单属性与类型转换器25
2.3.2复杂属性26
2.3.3标记扩展28
2.3.4附加属性29
2.3.5嵌套元素30
2.3.6特殊字符与空白32
2.3.7事件34
2.3.8 完整的Eight Ball Answer示例35
2.4使用其他名称空间中的类型36
2.5加载和编译XAML38
2.5.1只使用代码38
2.5.2使用代码和未经编译的XAML40
2.5.3使用代码和编译过的XAML42
2.5.4只使用XAML44
2.6小结45
第3章 布局47
3.1理解WPF中的布局47
3.1.1 WPF布局原则47
3.1.2布局过程48
3.1.3布局容器48
3.2使用StaclkPanel面板进行简单布局50
3.2.1布局属性52
3.2.2对齐方式52
3.2.3边距53
3.2.4最小尺寸、最大尺寸以及显式地设置尺寸54
3.2.5 Border控件56
3.3 WrapPanel和 DockPanel面板57
3.3.1 WrapPanel面板57
3.3.2 DockPanel面板58
3.3.3嵌套布局容器59
3.4 Grid面板60
3.4.1调整行和列63
3.4.2布局舍入64
3.4.3跨越行和列65
3.4.4分割窗口66
3.4.5共享尺寸组69
3.4.6 UniformGrid面板72
3.5使用Canvas面板进行基于坐标的布局72
3.5.1 Z顺序73
3.5.2 lnkCanvas元素74
3.6布局示例76
3.6.1列设置76
3.6.2动态内容77
3.6.3组合式用户界面79
3.7小结80
第4章 依赖项属性83
4.1理解依赖项属性83
4.1.1定义依赖项属性84
4.1.2注册依赖项属性84
4.1.3添加属性包装器86
4.1.4 WPF使用依赖项属性的方式87
4.1.5共享的依赖项属性88
4.1.6附加的依赖项属性88
4.2属性验证90
4.2.1验证回调90
4.2.2强制回调91
4.3小结93
第5章 路由事件95
5.1理解路由事件95
5.1.1定义、注册和封装路由事件95
5.1.2共享路由事件96
5.1.3引发路由事件96
5.1.4处理路由事件97
5.2事件路由99
5.2.1 RoutedEventArgs类100
5.2.2冒泡路由事件100
5.2.3处理挂起的事件103
5.2.4 附加事件103
5.2.5 隧道路由事件105
5.3 WPF事件106
5.3.1生命周期事件106
5.3.2输入事件108
5.4键盘输入108
5.4.1处理按键事件109
5.4.2焦点111
5.4.3获取键盘状态112
5.5鼠标输入113
5.5.1鼠标单击115
5.5.2捕获鼠标115
5.5.3鼠标拖放116
5.6多点触控输入118
5.6.1多点触控的输入层次119
5.6.2原始触控119
5.6.3操作122
5.6.4惯性124
5.7小结125
第Ⅱ部分 进一步研究WPF129
第6章 控件129
6.1控件类129
6.1.1背景画刷和前景画刷130
6.1.2字体132
6.1.3鼠标光标136
6.2内容控件137
6.2.1 Content属性138
6.2.2对齐内容140
6.2.3 WPF内容原则141
6.2.4标签142
6.2.5按钮142
6.2.6工具提示145
6.3特殊容器151
6.3.1 ScrollViewe152
6.3.2 GroupBox154
6.3.3 Tabltem154
6.3.4 Expander155
6.4文本控件158
6.4.1多行文本158
6.4.2选择文本159
6.4.3拼写检查160
6.4.4 PasswordBox162
6.5 列表控件162
6.5.1 ListBox163
6.5.2 ComboBox166
6.6基于范围的控件166
6.6.1 Slider167
6.6.2 ProgressBar168
6.7日期控件169
6.8小结171
第7章 Application类173
7.1应用程序的生命周期173
7.1.1创建Application对象173
7.1.2派生自定义的Application类174
7.1.3应用程序的关闭方式176
7.1.4应用程序事件177
7.2 Application类的任务179
7.2.1显示初始界面179
7.2.2处理命令行参数180
7.2.3访问当前Application对象181
7.2.4在窗口之间进行交互182
7.2.5 单实例应用程序184
7.3程序集资源189
7.3.1添加资源189
7.3.2检索资源190
7.3.3 pack URI192
7.3.4内容文件193
7.4本地化193
7.4.1构建能够本地化的用户界面194
7.4.2使应用程序为本地化做好准备194
7.4.3管理翻译过程195
7.5小结200
第8章 元素绑定201
8.1将元素绑定到一起201
8.1.1绑定表达式202
8.1.2绑定错误203
8.1.3绑定模式203
8.1.4使用代码创建绑定205
8.1.5使用代码检索绑定206
8.1.6多绑定207
8.1.7绑定更新210
8.1.8绑定延迟211
8.2绑定到非元素对象211
8.2.1 Source属性212
8.2.2 RelativeSource属性212
8.2.3 DataContext属性213
8.3小结214
第9章 命令215
9.1理解命令215
9.2 WPF命令模型216
9.2.1 ICommand接口217
9.2.2 RoutedCommand类217
9.2.3 RoutedUICommand类218
9.2.4命令库219
9.3执行命令220
9.3.1命令源220
9.3.2命令绑定221
9.3.3使用多命令源223
9.3.4微调命令文本224
9.3.5直接调用命令224
9.3.6禁用命令225
9.3.7具有内置命令的控件227
9.4高级命令229
9.4.1自定义命令229
9.4.2在不同位置使用相同的命令230
9.4.3使用命令参数232
9.4.4跟踪和翻转命令233
9.5小结237
第10章 资源239
10.1资源基础239
10.1.1资源集合239
10.1.2资源的层次241
10.1.3静态资源和动态资源242
10.1.4非共享资源243
10.1.5通过代码访问资源244
10.1.6应用程序资源244
10.1.7系统资源245
10.2资源字典246
10.2.1创建资源字典246
10.2.2使用资源字典247
10.2.3在程序集之间共享资源248
10.3小结251
第11章 样式和行为253
11.1样式基础253
11.1.1创建样式对象256
11.1.2设置属性257
11.1.3关联事件处理程序258
11.1.4多层样式259
11.1.5通过类型自动应用样式261
11.2触发器262
11.2.1简单触发器262
11.2.2事件触发器264
11.3行为266
11.3.1获取行为支持266
11.3.2理解行为模型267
11.3.3创建行为268
11.3.4使用行为270
11.3.5 Blend中的设计时行为支持271
11.4小结271
第Ⅲ部分 图画和动画275
第12章 形状、画刷和变换275
12.1理解形状275
12.1.1 Shape类276
12.1.2矩形和椭圆277
12.1.3改变形状的尺寸和放置形状278
12.1.4使用Viewbox控件缩放形状280
12.1.5直线282
12.1.6折线283
12.1.7多边形284
12.1.8直线线帽和直线交点286
12.1.9点划线287
12.1.10像素对齐288
12.2画刷289
12.2.1 SolidColorBrush画刷290
12.2.2 LinearGradientBrush画刷290
12.2.3 RadialGradientBrush画刷292
12.2.4 ImageBrush画刷294
12.2.5平铺的ImageBrush画刷295
12.2.6 VisualBrush画刷297
12.2.7 BitmapCacheBrush画刷298
12.3变换299
12.3.1变换形状300
12.3.2变换元素302
12.4透明303
12.4.1使元素半透明303
12.4.2透明掩码304
12.5小结306
第13章 几何图形和图画307
13.1路径和几何图形307
13.1.1直线、矩形和椭圆图形308
13.1.2使用GeometryGroup组合形状309
13.1.3使用CombinedGeomet融合几何图形311
13.1.4使用PathGeomet绘制曲线和直线313
13.1.5微语言几何图形318
13.1.6使用几何图形进行剪裁319
13.2图画320
13.2.1显示图画322
13.2.2导出插图324
13.3小结326
第14章 效果和可视化对象327
14.1可视化对象327
14.1.1绘制可视化对象328
14.1.2在元素中封装可视化对象329
14.1.3命中测试332
14.1.4复杂的命中测试334
14.2效果338
14.2.1 BlurEffect类338
14.2.2 DropShadowEffect类339
14.2.3 ShaderEffect类340
14.3 WriteableBitmap类342
14.3.1生成位图342
14.3.2写入WriteableBitmap对象343
14.3.3更高效的像素写入345
14.4小结347
第15章 动画基础349
15.1理解WPF动画349
15.1.1基于时间的动画349
15.1.2基于属性的动画350
15.2基本动画351
15.2.1 Animation类351
15.2.2使用代码创建动画353
15.2.3同时发生的动画358
15.2.4动画的生命周期358
15.2.5 Timeline类359
15.3故事板362
15.3.1故事板363
15.3.2事件触发器363
15.3.3重叠动画366
15.3.4同步的动画367
15.3.5控制播放367
15.3.6监视动画进度371
15.4动画缓动373
15.4.1使用缓动函数373
15.4.2在动画开始时应用缓动与在动画结束时应用缓动374
15.4.3缓动函数类375
15.4.4创建自定义缓动函数377
15.5动画性能379
15.5.1期望的帧率380
15.5.2位图缓存382
15.6小结384
第16章 高级动画385
16.1动画类型回顾385
16.1.1动态变换386
16.1.2动态改变画刷390
16.1.3动态改变像素着色器392
16.2关键帧动画393
16.2.1离散的关键帧动画395
16.2.2缓动关键帧395
16.2.3样条关键帧动画396
16.3基于路径的动画397
16.4基于帧的动画399
16.5使用代码创建故事板402
16.5.1创建主窗口403
16.5.2创建Bomb用户控件405
16.5.3投弹406
16.5.4拦截炸弹409
16.5.5统计炸弹和清理工作410
16.6小结412
第Ⅳ部分 模板和自定义元素417
第17章 控件模板417
17.1理解逻辑树和可视化树417
17.2理解模板422
17.2.1修饰类424
17.2.2剖析控件426
17.3创建控件模板428
17.3.1简单按钮429
17.3.2模板绑定430
17.3.3改变属性的触发器431
17.3.4使用动画的触发器434
17.4组织模板资源435
17.4.1分解按钮控件模板436
17.4.2通过样式应用模板438
17.4.3自动应用模板439
17.4.4由用户选择的皮肤440
17.5构建更复杂的模板442
17.5.1嵌套的模板443
17.5.2修改滚动条445
17.5.3控件模板示例450
17.6可视化状态451
17.7小结452
第18章 自定义元素453
18.1理解WPF中的自定义元素454
18.2构建基本的用户控件456
18.2.1定义依赖项属性456
18.2.2定义路由事件459
18.2.3添加标记460
18.2.4使用控件462
18.2.5命令支持462
18.2.6 深入分析用户控件465
18.3创建无外观控件466
18.3.1修改颜色拾取器的代码466
18.3.2修改颜色拾取器的标记467
18.3.3精简控件模板469
18.4支持可视化状态472
18.4.1开始编写FlipPanel类473
18.4.2选择部件和状态475
18.4.3默认控件模板476
18.4.4使用FlipPanel控件482
18.4.5 使用不同的控件模板483
18.5创建自定义面板485
18.5.1两步布局过程485
18.5.2 Canvas面板的副本488
18.5.3更好的WrapPanel面板489
18.6自定义绘图元素492
18.6.1 OnRender()方法493
18.6.2评估自定义绘图494
18.6.3自定义绘图元素495
18.6.4 创建自定义装饰元素497
18.7小结498
第Ⅴ部分 数据501
第19章 数据绑定501
19.1使用自定义对象绑定到数据库501
19.1.1构建数据访问组件502
19.1.2构建数据对象504
19.1.3显示绑定对象505
19.1.4更新数据库508
19.1.5更改通知508
19.2绑定到对象集合510
19.2.1显示和编辑集合项510
19.2.2插入和移除集合项513
19.2.3绑定到ADO.NET对象514
19.2.4 绑定到LINQ表达式515
19.3提高大列表的性能518
19.3.1虚拟化518
19.3.2项容器再循环519
19.3.3缓存长度519
19.3.4延迟滚动520
19.4验证521
19.4.1在数据对象中进行验证521
19.4.2自定义验证规则526
19.4.3响应验证错误528
19.4.4获取错误列表529
19.4.5显示不同的错误指示符号530
19.4.6验证多个值533
19.5数据提供者535
19.5.1 ObjectDataProvider536
19.5.2 XmlDataProvider539
19.6小结541
第20章 格式化绑定的数据543
20.1数据绑定回顾543
20.2数据转换544
20.2.1使用StringFormat属性545
20.2.2值转换器简介546
20.2.3使用值转换器设置字符串的格式547
20.2.4使用值转换器创建对象549
20.2.5应用条件格式化551
20.2.6 评估多个属性552
20.3列表控件554
20.4列表样式555
20.4.1 ItemContainerStyle556
20.4.2包含复选框或单选按钮的ListBox控件557
20.4.3交替条目样式559
20.4.4样式选择器561
20.5数据模板564
20.5.1分离和重用模板566
20.5.2使用更高级的模板567
20.5.3改变模板569
20.5.4模板选择器570
20.5.5模板与选择573
20.5.6 改变项的布局577
20.6 ComboBox控件578
20.7小结581
第21章 数据视图583
21.1 View对象583
21.1.1检索视图对象584
21.1.2视图导航584
21.1.3以声明方式创建视图587
21.2过滤、排序与分组588
21.2.1过滤集合588
21.2.2过滤DataTable对象591
21.2.3排序592
21.2.4分组593
21.2.5 实时成型598
21.3小结599
第22章 列表、树和网格601
22.1 ListView控件601
22.1.1使用GirdView创建列602
22.1.2创建自定义视图606
22.2 TreeView控件613
22.2.1创建数据绑定的TreeView控件614
22.2.2将DataSet对象绑定到TreeView控件617
22.2.3即时创建节点618
22.3 DataGrid控件621
22.3.1改变列的尺寸与重新安排列622
22.3.2定义列623
22.3.3设置列的格式和样式628
22.3.4设置行的格式629
22.3.5显示行细节630
22.3.6 冻结列631
22.3.7选择632
22.3.8排序632
22.3.9编辑633
22.4小结635
第Ⅵ 窗口、页面和富控件639
第23章 窗口639
23.1 Window类639
23.1.1显示窗口641
23.1.2定位窗口642
23.1.3保存和还原窗口位置642
23.2窗口交互644
23.2.1窗口所有权646
23.2.2对话框模型647
23.2.3通用对话框648
23.3非矩形窗口649
23.3.1简单形状窗口649
23.3.2具有形状内容的透明窗口651
23.3.3移动形状窗口653
23.3.4改变形状窗口的尺寸653
23.3.5组合到一起:窗口的自定义控件模板655
23.4 Windows 7任务栏编程658
23.4.1使用跳转列表659
23.4.2改变任务栏图标和预览663
23.5小结667
第24章 页面和导航669
24.1基于页面的导航669
24.2基于页面的界面670
24.2.1创建一个具有导航窗口的基于页面的简单应用程序670
24.2.2 Page类672
24.2.3超链接673
24.2.4在框架中驻留页面675
24.2.5在另一个页面中驻留页面677
24.2.6在Web浏览器中驻留页面678
24.3页面历史678
24.3.1深入分析WPF中的URI678
24.3.2导航历史679
24.3.3维护自定义的属性681
24.4导航服务682
24.4.1通过编程进行导航682
24.4.2导航事件683
24.4.3管理日志684
24.4.4向日志添加自定义项685
24.4.5使用页函数689
24.5 XAML浏览器应用程序692
24.5.1创建XBAP应用程序692
24.5.2部署XBAP应用程序693
24.5.3更新XBAP应用程序695
24.5.4 XBAP应用程序的安全性695
24.5.5完全信任的XBAP应用程序696
24.5.6组合XBAP/独立应用程序697
24.5.7为不同的安全级别编写代码697
24.5.8在网页中嵌入XBAP应用程序702
24.6 WebBrowser控件702
24.6.1导航到页面703
24.6.2构建DOM树704
24.6.3使用.NET代码为网页添加脚本706
24.7小结708
第25章 菜单、工具栏和功能区709
25.1菜单709
25.1.1 Menu类710
25.1.2菜单项710
25.1.3 ContextMenu类712
25.1.4菜单分隔条713
25.2工具栏和状态栏714
25.2.1 ToolBar控件714
25.2.2 StatusBar控件717
25.3功能区718
25.3.1添加功能区719
25.3.2应用程序菜单720
25.3.3选项卡、组与按钮722
25.3.4富工具提示724
25.3.5带有快捷键提示的键盘访问725
25.3.6改变功能区的大小726
25.3.7快速访问工具栏729
25.4小结730
第26章 声音和视频731
26.1播放WAV音频731
26.1.1 SoundPlayer类731
26.1.2 SoundPlayerAction类733
26.1.3系统声音733
26.2 MediaPlayer类734
26.3 MediaElement类735
26.3.1使用代码播放音频736
26.3.2处理错误737
26.3.3使用触发器播放音频737
26.3.4播放多个声音739
26.3.5 改变音量、平衡、速度以及位置740
26.3.6 将动画同步到音频742
26.3.7播放视频744
26.3.8视频效果744
26.4语音747
26.4.1语音合成747
26.4.2语音识别749
26.5小结751
第27章 3D绘图753
27.1 3D绘图基础753
27.1.1视口754
27.1.2 3D对象754
27.1.3摄像机761
27.2深入研究3D绘图765
27.2.1着色和法线766
27.2.2更复杂的形状769
27.2.3 Model3DGroup集合769
27.2.4使用材质771
27.2.5纹理映射773
27.3交互和动画777
27.3.1变换777
27.3.2旋转778
27.3.3飞过779
27.3.4跟踪球781
27.3.5命中测试782
27.3.6 3D表面上的2D元素786
27.4小结789
第Ⅶ部分 文档和打印793
第28章 文档793
28.1理解文档793
28.2流文档794
28.2.1流内容元素795
28.2.2设置内容元素的格式796
28.2.3创建简单的流文档797
28.2.4块元素799
28.2.5内联元素804
28.2.6通过代码与元素进行交互809
28.2.7文本对齐812
28.3只读流文档容器813
28.3.1缩放814
28.3.2创建页面和列815
28.3.3从文件加载文档817
28.3.4打印818
28.4编辑流文档818
28.4.1加载文件819
28.4.2保存文件821
28.4.3设置所选文本的格式822
28.4.4获取单个单词824
28.5固定文档825
28.6批注826
28.6.1批注类827
28.6.2启用批注服务828
28.6.3创建批注829
28.6.4检查批注832
28.6.5响应批注更改835
28.6.6 在固定文档中保存批注835
28.6.7自定义便签的外观836
28.7小结837
第29章 打印839
29.1基本打印839
29.1.1打印元素840
29.1.2变换打印输出842
29.1.3打印不显示的元素844
29.1.4打印文档845
29.1.5在文档打印输出中控制页面848
29.2自定义打印851
29.2.1使用可视化层中的类进行打印851
29.2.2自定义多页打印854
29.3打印设置和管理859
29.3.1保存打印设置859
29.3.2打印页面范围859
29.3.3管理打印队列860
29.4通过XPS进行打印863
29.4.1为打印预览创建XPS文档863
29.4.2写入内存的XPS文档864
29.4.3通过XPS直接打印到打印机865
29.4.4异步打印866
29.5小结866
第Ⅷ部分 其他主题869
第30章 与Windows窗体进行交互869
30.1访问互操作性869
30.2混合窗口和窗体870
30.2.1为WPF应用程序添加窗体870
30.2.2为Windows窗体应用程序添加WPF窗口870
30.2.3显示模态窗口和窗体871
30.2.4显示非模态窗口和窗体871
30.2.5启用Windows窗体控件的可视化风格872
30.3创建具有混合内容的窗口872
30.3.1 WPF和Windows窗体“空域”873
30.3.2在WPF中驻留Windows窗体控件874
30.3.3使用WPF和Windows窗体用户控件876
30.3.4在Windows窗体中驻留WPF控件877
30.3.5访问键、助记码和焦点879
30.3.6 属性映射880
30.4小结882
第31章 多线程883
31.1了解多线程模型883
31.1.1 Dispatcher类884
31.1.2 DispatcherObject类884
31.2 BackgroundWorker类887
31.2.1简单的异步操作887
31.2.2创建BackgroundWorker对象888
31.2.3运行BackgroundWorker对象889
31.2.4跟踪进度891
31.2.5支持取消893
31.3小结894
第32章 插件模型895
32.1在MAF和MEF两者间进行选择895
32.2了解插件管道896
32.2.1管道的工作原理897
32.2.2插件文件夹结构898
32.2.3为使用插件模型准备解决方案899
32.3创建使用插件模型的应用程序900
32.3.1协定901
32.3.2插件视图901
32.3.3插件902
32.3.4插件适配器902
32.3.5宿主视图903
32.3.6宿主适配器904
32.3.7宿主904
32.3.8更多插件907
32.4与宿主进行交互908
32.5可视化插件912
32.6小结915
第33章 ClickOnce部署917
33.1理解应用程序部署917
33.1.1 ClickOnce安装模型918
33.1.2 ClickOnce部署的局限性919
33.2简单的ClickOnce发布920
33.2.1设置发布者和产品920
33.2.2启动发布向导922
33.2.3理解部署文件的结构926
33.2.4安装ClickOnce应用程序926
33.2.5更新ClickOnce应用程序928
33.3 ClickOnce附加选项928
33.3.1发布版本928
33.3.2更新929
33.3.3文件关联930
33.3.4发布选项931
33.4小结932
热门推荐
- 1523522.html
- 699511.html
- 3789401.html
- 424820.html
- 2227379.html
- 2910962.html
- 442021.html
- 2301543.html
- 865662.html
- 1768430.html
- http://www.ickdjs.cc/book_3000331.html
- http://www.ickdjs.cc/book_3142848.html
- http://www.ickdjs.cc/book_550062.html
- http://www.ickdjs.cc/book_474290.html
- http://www.ickdjs.cc/book_1858506.html
- http://www.ickdjs.cc/book_481477.html
- http://www.ickdjs.cc/book_601020.html
- http://www.ickdjs.cc/book_3552917.html
- http://www.ickdjs.cc/book_361040.html
- http://www.ickdjs.cc/book_1423907.html