第1章 Windows窗体应用程序概述 1
1.1 Windows窗体 1
1.2 Windows窗体应用程序 2
1.3 Windows窗体界面元素 4
1.4 事件处理 6
1.5 Windows窗体和.NET Framework类库 6
1.6 本书知识体系结构 7
1.7 演示应用程序简介 7
1.8 小结 8
1.9 习题 8
第2章 窗体、控件和Visual Studio 9
2.1 创建简单Windows应用程序 9
2.1.1 Windows窗体项目结构 10
2.1.2 创建窗体 10
2.1.3 设置窗体属性 11
2.1.4 向窗体添加控件 12
2.1.5 事件处理 14
2.1.6 窗体生命周期 15
2.2 控件和组件的功能分类 16
2.3 控件基类 17
2.4 定制控件工具箱 20
2.5 Visual Studio 2005的辅助布局功能 21
2.6 小结 22
2.7 实验 22
2.8 习题 22
第3章 配置标准控件 27
3.1 TreeView控件 28
3.1.1 TreeView控件的基本组成 28
3.1.2 展开折叠树 31
3.1.3 树外观设置 31
3.1.4 课堂练习 34
3.2 SplitContainer控件 38
3.2.1 向SplitContainer中的面板添加控件 39
3.2.2 SplitContainer的界面设置 39
3.2.3 课堂练习 40
3.3 ToolStrip控件 41
3.4 ListView控件 46
3.5 PictureBox控件 54
3.6 TableLayoutPanel控件 57
3.7 MonthCalendar控件 64
3.7.1 课堂练习 67
3.7.2 可选课堂练习 69
3.8 WebBrowser控件 75
3.9 ComboBox控件 79
3.10 小结 83
3.11 实验 83
3.12 习题 83
第4章 菜单与状态栏控件 88
4.1 Windows窗体中的菜单 89
4.2 MenuStrip控件 90
4.3 ContextMenuStrip控件 97
4.4 StatusStrip控件 102
4.5 小结 106
4.6 实验 106
4.7 习题 106
第5章 使用数据绑定控件显示和编辑数据 109
5.1 将数据绑定到控件 109
5.1.1 数据绑定的类型 110
5.1.2 课堂演示 110
5.1.3 课堂演示 111
5.1.4 “数据源”窗口 114
5.1.5 数据源配置向导 114
5.1.6 课堂演示 114
5.1.7 数据集 118
5.1.8 TableAdapter 120
5.1.9 BindingSource组件 120
5.1.10 课堂演示 122
5.1.11 BindingNavigator控件 125
5.1.12 课堂演示 127
5.2 DataGridView控件 128
5.2.1 DataGridView的功能 128
5.2.2 课堂演示 133
5.3 小结 136
5.4 实验 136
5.5 习题 136
第6章 提供用户帮助并增强易用性 139
6.1 提供用户帮助 140
6.1.1 ToolTip组件 141
6.1.2 课堂练习 143
6.1.3 HelpProvider组件 155
6.1.4 课堂练习 157
6.1.5 ErrorProvider组件 161
6.1.6 课堂练习 164
6.1.7 Timer组件 168
6.1.8 课堂练习 169
6.1.9 使用SoundPlayer播放系统声音和音频文件 172
6.1.10 课堂练习 174
6.2 实现辅助功能特性 177
6.3 实现全球化和本地化 178
6.3.1 资源文件 178
6.3.2 课堂练习 179
6.3.3 文化设置 181
6.3.4 从右到左的文本 181
6.4 小结 181
6.5 实验 181
6.6 习题 181
第7章 使用对话框和窗体继承 185
7.1 Windows窗体应用程序中的对话框 186
7.1.1 OpenFileDialog组件 186
7.1.2 课堂练习 189
7.1.3 SaveFileDialog组件 192
7.1.4 课堂练习 193
7.1.5 FolderBrowserDialog组件 196
7.1.6 课堂练习 198
7.1.7 ColorDialog组件 199
7.1.8 课堂练习 201
7.1.9 FontDialog组件 204
7.1.10 课堂练习 205
7.1.11 创建自定义对话框 208
7.1.12 课堂练习 209
7.2 Windows窗体继承 212
7.3 小结 212
7.4 实验 213
7.5 习题 213
第8章 打印内容和创建报表 214
8.1 Windows窗体应用程序中的打印功能 215
8.1.1 PrintDocument组件 215
8.1.2 课堂练习 217
8.1.3 PrintDialog组件 219
8.1.4 课堂练习 220
8.1.5 PageSetupDialog组件 221
8.1.6 课堂练习 223
8.1.7 PrintPreviewDialog控件 224
8.1.8 课堂练习 226
8.1.9 PrintPreviewControl控件 227
8.2 通过使用GDI+绘制打印文档内容 229
8.3 Windows窗体应用程序中的报表 236
8.3.1 CrystalReportViewer控件 237
8.3.2 课堂演示 239
8.3.3 ReportViewer控件 244
8.3.4 课堂演示 246
8.4 小结 250
8.5 实验 250
8.6 习题 250
第9章 Windows窗体下的异步编程 253
9.1 Windows窗体应用程序中的异步任务 254
9.2 BackgroundWorker组件 255
9.3 课堂演示 258
9.4 System.Threading命名空间 265
9.5 课堂练习 267
9.6 创建线程安全应用程序 272
9.6.1 协调多个线程 272
9.6.2 管理竞争情况 275
9.6.3 管理死锁 276
9.7 小结 277
9.8 实验 277
9.9 习题 277
第10章 通过使用ClickOnce部署应用程序 280
10.1 Windows窗体应用程序部署选项 280
10.1.1 XCOPY 280
10.1.2 Windows Installer 280
10.2 多媒体:ClickOnce技术概述 281
10.3 比较ClickOnce和Windows Installer 281
10.4 使用ClickOnce部署应用程序 282
10.5 小结 286
10.6 实验 287
10.7 习题 287
第11章 构建多文档界面(MDI)应用程序 288
11.1 Windows窗体布局选项 289
11.1.1 单文档界面(SDI) 289
11.1.2 多文档界面(MDI) 290
11.2 多文档界面(MDI)应用程序 291
11.3 课堂练习 293
11.4 小结 303
11.5 实验 304
11.6 习题 304
第12章 自定义Windows窗体和控件 306
12.1 创建Windows窗体控件的方法 306
12.1.1 继承自现有Windows窗体控件 307
12.1.2 课堂演示 307
12.1.3 继承自UserControl类 311
12.1.4 课堂演示 312
12.1.5 继承自Control类 313
12.2 使用GDI+绘制用户界面的方法 314
12.3 创建非矩形Windows窗体 322
12.3.1 使用位图创建非矩形窗体 322
12.3.2 课堂演示 322
12.3.3 使用GraphicsPath类创建非矩形窗体 326
12.4 小结 327
12.5 实验 327
12.6 习题 327
第13章 执行拖放操作和实现剪贴板支持 330
13.1 Windows窗体应用程序中的拖放操作 331
13.2 课堂练习 333
13.3 在Windows窗体应用程序中添加剪贴板支持 335
13.4 小结 337
13.5 实验 337
13.6 习题 337
第14章 DataGridView的增强外观和应用程序设置 339
14.1 自定义DataGridView控件 339
14.1.1 自定义排序 339
14.1.2 创建主/从界面 340
14.1.3 课堂演示 340
14.1.4 虚拟模式 343
14.1.5 自定义格式化 343
14.2 应用程序设置和PropertyGrid控件 346
14.2.1 应用程序设置概述 346
14.2.2 PropertyGrid控件概述 348
14.3 小结 352
14.4 实验 352
14.5 习题 352
词汇表 354