《C#开发技术大全》PDF下载

  • 购买积分:26 如何计算积分?
  • 作  者:李佳,付强,丁宁等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302192121
  • 页数:1033 页
图书介绍:本书对Visual C# 2008的语言结构以及相关特性进行了比较全面的介绍。

第1篇 开发环境及C#语言简介 2

第1章 Visual Studio 2008介绍 2

1.1 .NET概述 2

1.1.1 .NET发展史 2

1.1.2中间语言 3

1.1.3垃圾收集器 4

1.2 .NET Framework概述 5

1.2.1 .NET Framework概述 5

1.2.2公共语言运行时 7

1.2.3基类库 7

1.2.4公共语言运行规范 9

1.3 Visual Studio 2008的新特性 9

1.4 Visual Studio 2008开发环境介绍 10

1.4.1 Visual Studio 2008的安装 10

1.4.2项目模板 12

1.4.3网站模板 14

1.4.4文件模板 15

1.4.5 Visual Studio 2008 IDE概述 16

1.4.6 Visual Studio 2008的开发工具栏和菜单栏 17

1.4.7对象浏览器和类视图 20

1.4.8工具箱和属性窗口 21

1.5定制环境 22

1.5.1修改字体和颜色 23

1.5.2定制帮助位置 23

1.5.3在项目和解决方案中保存文件 23

1.5.4任务列表和注释 24

1.5.5命令窗口 25

1.5.6行号与代码折叠 26

1.5.7窗口管理 27

1.5.8调试与生成 28

1.6学会使用MSDN帮助系统 30

1.7 Visual Studio 2008编程示例 31

1.8 本章总结 33

第2章 C#简介 35

2.1 C#与.NET的关系 35

2.2 C#的主要特点 35

2.2.1简单性 36

2.2.2类型统一性 39

2.2.3面向对象性 39

2.2.4类型安全性 40

2.2.5兼容性 41

2.3 C#与其他语言对比 42

2.4 C#与VB.NET 42

2.4.1代码显示 42

2.4.2数据类型和变量 43

2.4.3类、数据类型、函数以及接口 44

2.4.4操作符与表达式 44

2.4.5控制流程语言 45

2.4.6 On Error语句 47

2.4.7关键字 47

2.4.8访问修饰符 48

2.4.9语法 48

2.4.10 C#与VB.NET代码比较 48

2.5 C#与C++ 52

2.5.1托管的环境 52

2.5.2.NET对象 52

2.5.3 C#的语句 52

2.5.4 C#中取消的要素 53

2.5.5操作符重载 53

2.5.6头文件 53

2.5.7程序书写 53

2.5.8指针 54

2.5.9虚函数 54

2.5.10 C#与C++代码比较 56

2.6 C#与Java 57

2.6.1数据类型(Data Type) 57

2.6.2类(Class) 58

2.6.3属性(Property) 59

2.6.4事件(Event)、指针(Pointer)与界面 60

2.6.5 C#与Java代码比较 60

2.7本章总结 61

第2篇 C#程序设计基础 64

第3章 C#数据类型 64

3.1数据类型 64

3.2值类型 65

3.2.1值类型概述 65

3.2.2整型 66

3.2.3字符型 67

3.2.4浮点型 68

3.2.5小数型 69

3.2.6布尔型 69

3.2.7 C#的数值类型 69

3.3引用类型 70

3.3.1引用类型概述 70

3.3.2类类型 71

3.3.3对象类型 71

3.3.4字符串类型 71

3.3.5接口类型 73

3.4类型转换 75

3.4.1类型转换概述 75

3.4.2显式转换 76

3.4.3隐式转换 76

3.4.4两种数值类型之间的转换 77

3.4.5数值类型和字符串之间的转换 78

3.4.6字符的ASCII码和Unicode码之间的转换 80

3.4.7字符串和字符数组之间的转换 81

3.4.8字符串和字节数组之间的转换 83

3.4.9数值类型和字节数组之间的转换 84

3.4.10各个类型之间的强制转换 85

3.5复杂数据类型 86

3.5.1枚举概述 86

3.5.2枚举编程示例 87

3.5.3结构概述 88

3.5.4结构编程示例 89

3.5.5结构中的方法 90

3.5.6结构与类的区别 92

3.5.7结构的适用范围 92

3.6本章总结 92

第4章 变量与表达式 93

4.1常量与变量 93

4.1.1常量概述 93

4.1.2静态常量 93

4.1.3动态常量 94

4.1.4编程中的常量 94

4.1.5变量概述 95

4.1.6变量的实质 96

4.1.7变量的分类 97

4.1.8变量的命名规范 99

4.2运算符与表达式 100

4.2.1运算符的分类 100

4.2.2算术运算符 100

4.2.3关系运算符 103

4.2.4一般赋值运算符 104

4.2.5复合赋值运算符 105

4.2.6逻辑运算符 107

4.2.7二进制计算 110

4.2.8位运算符 111

4.2.9三元运算符 114

4.2.10自增和自减运算符 114

4.2.11运算符的优先级 116

4.3关键字 117

4.4本章总结 117

第5章 程序控制语言 118

5.1 C#语句分类 118

5.2选择语句 119

5.2.1选择语句概述 119

5.2.2 if语句简介 119

5.2.3单条选择if语句 120

5.2.4 if…else…语句 121

5.2.5复杂if…else…语句 122

5.2.6嵌套语句 124

5.2.7 switch语句概述 126

5.2.8 switch语句编程示例 127

5.3循环语句 128

5.3.1 do循环 128

5.3.2 while循环 129

5.3.3 for循环 130

5.3.4 foreach循环语句 132

5.4跳转语句 133

5.4.1 break语句 133

5.4.2 continue语句 135

5.4.3 return语句 136

5.4.4 goto语句与标志符 137

5.4.5 goto语句与switch语句 138

5.4.6 goto语句与嵌套循环语句 139

5.4.7 throw语句 141

5.5注释语句 142

5.5.1普通注释语句 143

5.5.2利用注释语句生成帮助文档 144

5.6本章总结 145

第6章 函数与方法 146

6.1定义和使用函数 146

6.1.1函数与方法 146

6.1.2函数的表达形式 146

6.2参数与返回值 147

6.2.1参数 147

6.2.2值参数(value parameter) 147

6.2.3引用参数(reference parameter) 148

6.2.4输出参数(output parameter) 151

6.2.5数组参数(oarray parameter) 152

6.2.6利用返回值获取数值 153

6.2.7利用返回值判断逻辑 155

6.3变量的作用域 157

6.3.1局部变量 157

6.3.2全局变量 159

6.4 Main()函数 160

6.5常用函数 163

6.6本章总结 165

第3篇 C面向对象简介 168

第7章 类和对象 168

7.1类和对象简述 168

7.2类的定义 169

7.2.1类概述 169

7.2.2访问类型 171

7.2.3成员方法 172

7.3创建对象 173

7.3.1构造函数 173

7.3.2成员变量的初始化 175

7.3.3拷贝构造函数 177

7.3.4关键字this 178

7.4静态成员的使用 179

7.4.1静态成员概述 179

7.4.2调用静态方法 179

7.4.3使用静态构造函数 180

7.4.4使用私有构造函数 181

7.4.5使用静态成员变量 181

7.5对象的销毁 182

7.5.1 C#中的析构函数 182

7.5.2 Dispose()方法 183

7.5.3 using声明 184

7.6参数传递 184

7.6.1引用传递 185

7.6.2 out类型参数 187

7.7方法和构造函数的重写 190

7.8类的属性 193

7.8.1类的属性概述 193

7.8.2 get访问器 195

7.8.3 set访问器 195

7.9 Readonly类型变量 196

7.10本章总结 198

第8章 继承与多态 199

8.1继承 199

8.1.1继承 199

8.1.2 C#中的继承 200

8.1.3继承中的构造函数调用 204

8.1.4 base关键字 205

8.1.5 Protected访问类型 207

8.1.6 sealed关键字 209

8.2万类之根——Object类 209

8.3多态 211

8.3.1多态概述 211

8.3.2在基类与子类中定义同名方法 212

8.3.3方法重写——virtual和override关键字的使用 213

8.3.4 new关键字 215

8.4对象类型转换——Up-casting和Down-casting 216

8.4.1 Up-casting类型转换 216

8.4.2 Down-casting类型转换 217

8.4.3 is和as关键字 217

8.5装箱和拆箱 218

8.6本章总结 219

第9章 抽象类和接口 220

9.1抽象类 220

9.2接口 223

9.2.1接口概述 223

9.2.2实现多个接口 226

9.2.3指定方法的实现 228

9.2.4使用is和as操作符实现接口转换 230

9.2.5接口间的继承 231

9.3本章总结 233

第10章 数组与集合 234

10.1多维数组 234

10.1.1多维数组概述 234

10.1.2多维数组的实例化和访问 235

10.1.3变长数组的实例化和访问 237

10.2 foreach循环 239

10.3集合 242

10.3.1 ArrayList类 243

10.3.2 Stack类 245

10.3.3 Queue类 247

10.4字典类型集合 249

10.4.1 Hashtable类概述 249

10.4.2创建Hashtable集合 249

10.4.3向Hashtable集合中添加元素 250

10.4.4从Hashtable集合中获取元素 250

10.4.5从Hashtable集合中移除指定的元素 250

10.4.6获取Hashtable集合的元素与键值 251

10.4.7在Hashtable集合中检索元素 252

10.4.8 SortedList类概述 252

10.4.9 SortedList类方法介绍 253

10.4本章总结 255

第11章 代理和事件 256

11.1代理 256

11.1.1代理概述 256

11.1.2方法的类型和标识 257

11.1.3代理引用 257

11.1.4 .NET Framework中的代理 261

11.1.5代理作方法的参数 261

11.1.6多重代理概述 263

11.1.7多重代理的实现 263

11.1.8移除多重代理指向的方法 265

11.2事件和事件处理 266

11.2.1 C#中的事件处理 266

11.2.2事件举例——时钟事件 267

11.2.3多重事件 270

11.2.4利用事件传递数据 271

11.3本章总结 273

第4篇 Windows程序编程 276

第12章 Windows应用程序概述 276

12.1 Windows应用程序 276

12.1.1 Windows应用程序概述 276

12.1.2 Windows应用程序的创建 276

12.1.3 Program.cs文件 277

12.1.4 Forml.cs文件 277

12.1.5 Forml.Designer.cs文件 278

12.2 Windows应用程序窗体 279

12.2.1 Windows应用程序窗体概述 279

12.2.2 Form类属性介绍 279

12.2.3 Form类常用事件介绍 280

12.3为窗体添加控件 281

12.3.1控件概述 281

12.3.2控件的基本属性介绍 282

12.3.3控件常用公共事件介绍 282

12.3.4向窗体添加控件 283

12.3.5控件的布局与停靠 283

12.4 Windows应用程序编程示例 285

12.4.1创建一个窗体 285

12.4.2修改窗体属性 285

12.4.3向窗体添加控件 286

12.4.4向控件事件添加事件处理程序 286

12.4.5编译和运行项目 286

12.5本章总结 287

第13章 Visual Studio 2008控件介绍 288

13.1文本编辑控件 288

13.1.1 TextBox控件概述 288

13.1.2读取或设置TextBox控件的内容 289

13.1.3 TextBox控件的多行文本输入 290

13.1.4 TextBox控件的文本选择 291

13.1.5密码框设置 292

13.1.6 TextBox控件的有效性验证 293

13.1.7 RichTextBox控件概述 293

13.1.8 RichTextBox控件的文本选择 294

13.1.9 RichTextBox控件的撤销操作 295

13.1.10 RichTextBox控件的拖放操作 296

13.1.11 RichTextBox控件的文本格式设置 297

13.1.12 RichTextBox控件的文本缩进 299

13.1.13 RichTextBox控件中的超链接 300

13.1.14 RichTextBox控件的文件操作 301

13.2文本显示控件 302

13.2.1 Label控件 302

13.2.2 LinkLabel控件概述 303

13.2.3 LinkCollection与Link类 305

13.2.4 LinkLabel控件编程示例 305

13.3容器控件 307

13.3.1 Panel控件 307

13.3.2 GroupBox控件 310

13.3.3 TabControl控件概述 311

13.3.4 TabControl控件外观设计 312

13.3.5 TabControl控件中标签页的选择 315

13.3.6 TabControl控件中的标签页 317

13.3.7 TableLayoutPanel控件概述 318

13.3.8 TableLayoutPanel控件的外观设置 319

13.3.9 TableLayoutPanel中的控件 321

13.4值设置控件 323

13.4.1 CheckBox控件 323

13.4.2 RadioButton控件 326

13.5本章总结 327

第14章 列表选择控件介绍 328

14.1 ListBox控件 328

14.1.1 ListBox控件概述 328

14.1.2 ListBox控件子项的编辑 328

14.1.3 ListBox控件行为设置 330

14.1.4 ListBox控件选择模式设置 332

14.1.5 ListBox控件外观设置 334

14.1.6 ListBox控件中的排序 335

14.1.7 ListBox控件的绘制 335

14.1.8 ListBox控件中的查找 336

14.1.9 ListBox控件的常用方法 338

14.2 ComboBox控件 340

14.2.1 ComboBox控件概述 340

14.2.2 ComboBox下拉框样式设置 340

14.2.3 ComboBox控件的自动补齐功能 342

14.2.4 ComboBox控件的自动补齐数据源 342

14.2.5 ComboBox控件的自动补齐方式 344

14.2.6 ComboBox控件的常见事件 345

14.2.7 ComboBox控件的子项选择 346

14.2.8 ComboBox控件的子项绘制 348

14.3 CheckedListBox控件 350

14.3.1 CheckedListBox控件概述 350

14.3.2 CheckedListBox控件编程示例 352

14.4 ListView控件 356

14.4.1 ListView控件概述 356

14.4.2 ListView控件视图 357

14.4.3 ListView任务窗体 358

14.4.4 ListView控件中的ImageList 359

14.4.5 ListView控件中的子项 361

14.4.6 “Details”视图模式 362

14.4.7 ListView控件的子项分组设置 363

14.4.8 ListView控件的拖曳操作 365

14.4.9 ListView控件的文本匹配和位置搜索 367

14.5 TreeView控件 368

14.5.1 TreeView控件概述 368

14.5.2编辑TreeView控件中的节点 369

14.5.3在TreeView控件中进行选择 371

14.5.4 TreeView控件的实际应用 373

14.5.5 TreeView控件的ImageList 373

14.5.6 TreeView控件的展开与折叠 374

14.5.7 TreeView控件的文本编辑 376

14.5.8 TreeView控件中的拖曳操作 377

14.6本章总结 380

第15章 数据显示控件 381

15.1 DataGridView控件介绍 381

15.1.1 DataGridView控件简介 381

15.1.2 DataGridView控件用户权限设置 383

15.1.3 DataGridView控件应用示例 385

15.1.4 DataGridView控件的数据源设置 386

15.1.5向DataGridView控件添加列 387

15.1.6冻结DataGridView控件中的列 388

15.1.7编辑DataGridView控件中的列 389

15.2 DataGridView的相关类关系 389

15.2.1 DataGridViewElement对象模型 390

15.2.2 DataGridViewCell对象模型 390

15.2.3 DataGridViewColumn控件对象模型 391

15.2.4 DataGridViewRow控件对象模型 391

15.3 DataGridView类的使用方法 392

15.3.1单元格边框样式 392

15.3.2 DataGridView控件边框设置 394

15.3.3 DataGridView控件单元格边框设置 394

15.3.4特殊单元格边框设置 396

15.3.5单元格形式设计 397

15.3.6单元格设置优先级说明 400

15.3.7 DataGridView控件外观设置 402

15.3.8 DataGridView控件行为设置 402

15.3.9 DataGridView控件的其他属性 403

15.3.10 AutoResizeColumn方法 406

15.3.11 AutoResizeColumns方法 407

15.3.12 AutoResizeColumnHeadersHeight方法 409

15.3.13 AutoResizeRowHeadersWidth方法 409

15.3.14 DataGridView控件的其他方法 411

15.4 DataGridView的相关类 411

15.4.1 DataGridViewColumn类的排序 411

15.4.2 DataGridViewTextBoxColumn 412

15.4.3 DataGridViewCheckBoxColumn 414

15.4.4 DataGridViewImageColumn 415

15.4.5 DataGridViewButtonColumn 417

15.4.6 DataGridViewComboBoxColumn 418

15.4.7 DataGridViewLinkColumn 421

15.5本章总结 422

第16章 通用对话框 423

16.1消息对话框 423

16.1.1消息对话框概述 423

16.1.2 Show方法 424

16.1.3消息对话框按键设置 425

16.1.4获取用户响应 426

16.1.5消息对话框图标设置 428

16.1.6消息对话框编程示例 429

16.2文件对话框 432

16.2.1 OpenFileDialog组件概述 432

16.2.2“打开”文件对话框弹出 433

16.2.3“打开”文件对话框中的快捷方式 433

16.2.4“打开”文件对话框中的多项选择 434

16.2.5“打开”文件对话框中的文件类型 435

16.2.6“打开”文件对话框中的外观设置 437

16.2.7“打开”文件对话框中的检查设置 439

16.2.8 SaveFileDialog组件概述 440

16.2.9 SaveFileDialog组件编程示例 441

16.2.10“另存为”对话框的文件确认 443

16.2.11 FolderBrowserDialog组件概述 444

16.2.12 FolderBrowserDialog组件编程示例 444

16.3字体选择对话框 447

16.3.1 FontDialog组件概述 447

16.3.2 FontDialog组件编程示例 448

16.4颜色选择对话框 450

16.4.1 ColorDialog组件概述 450

16.4.2 ColorDialog组件编程示例 452

16.5打印相关对话框 453

16.5.1 PrintDocument组件概述 453

16.5.2 PrintDocument组件编程示例 454

16.5.3 PageSetupDialog组件概述 456

16.5.4 PageSetupDialog组件编程示例 457

16.5.5 PrintPreviewDialog组件 458

16.5.6 PrintPreviewDialog组件编程示例 459

16.5.7 PrintDialog组件 462

16.6 本章总结 463

第17章 其他常用控件 465

17.1计时器组件 465

17.1.1 Timer件概述 465

17.1.2 Timer组件的触发 465

17.1.3秒表功能设置 467

17.1.4 Timer组件编程示例 469

17.2图形控件 470

17.2.1 PictureBox控件概述 470

17.2.2 PictureBox控件的图片显示方式 471

17.2.3 PictureBox控件中图片的更新 473

17.2.4 ImageList组件概述 473

17.2.5 ImageList组件适用控件 475

17.3菜单控件 475

17.3.1 MenuStrip控件概述 475

17.3.2添加菜单项 476

17.3.3菜单项功能设置 479

17.3.4 ToolStrip控件概述 481

17.3.5 ToolStripItem类型介绍 482

17.3.6 ToolStrip控件行为设置 484

17.3.7 ToolStripComboBox的自动填充 486

17.3.8 ToolStrip控件外观设置 486

17.3.9 ContextMenuStrip控件 487

17.4本章总结 488

第18章 Windows应用程序的部署 489

18.1部署方案简要介绍 489

18.1.1 ClickOnce部署方案概述 489

18.1.2 Windows Installer部署方案概述 490

18.2 ClickOnce部署 490

18.2.1创建Widows应用程序 490

18.2.2启动“发布向导” 491

18.2.3 URL地址设置 492

18.2.4应用程序名称设置 494

18.2.5应用程序文件内容设置 494

18.2.6应用程序下载组设置 495

18.2.7应用程序系统必备设置 495

18.2.8访问权限设置 496

18.2.9发布方式选择 497

18.2.10发布到网站 497

18.2.11发布到共享文件夹 499

18.2.12发布到CD-ROM 500

18.2.13施行发布 501

18.2.14安装并运行 503

18.3 Windows Installer部署 504

18.3.1创建Windows应用程序 504

18.3.2创建部署项目 504

18.3.3文件系统编辑器 505

18.3.4创建安装程序 506

18.3.5添加快捷方式 507

18.3.6设置Windows Installer部署属性 507

18.3.7设置Windows Installer应用程序注册表项 508

18.3.8安装过程中的默认对话框 508

18.3.9“欢迎使用”用户界面对话框 510

18.3.10“选择安装文件夹”用户界面对话框 510

18.3.11“确认安装”用户界面对话框 511

18.3.12“进度”用户界面对话框 512

18.3.13“安装完成”用户界面对话框 512

18.3.14安装过程中的自定义默认对话框 513

18.3.15“单选按钮”用户界面对话框 514

18.3.16“复选框”用户界面对话框 515

18.3.17“文本框”用户界面对话框 516

18.3.18“客户信息”用户界面对话框 517

18.3.19“许可协议”用户界面对话框 518

18.3.20“自述文件”用户界面对话框 518

18.3.21“注册用户”用户界面对话框 519

18.3.22部署应用程序 519

18.4部署方案比较 519

18.5本章总结 520

第5篇 C#的高级特征和工具 522

第19章 异常处理 522

19.1异常的基本概念 522

19.2 C#和.NET中的异常 524

19.2.1使用try…catch…finally结构处理异常 524

19.2.2异常类的消息和堆栈记录属性 526

19.2.3 finally语段 528

19.3多异常的捕获 530

19.3.1多异常简介 530

19.3.2使用多个catch语段的要点 533

19.3.3 C#中异常处理的其他要点 534

19.4定义用户异常 535

19.5本章总结 537

第20章 文件系统与流 538

20.1软件系统环境相关信息 538

20.1.1获得应用程序运行环境的信息——System.Environment类 538

20.1.2 System.Environment类的应用举例 538

20.1.3获得各种Windows标准文件夹的路径——Enviroment.GetFolderPath() 540

20.2对文件进行操作 542

20.2.1使用System.IO.File和System.IO.FileInfo类对文件进行操作 543

20.2.2 System.IO.File类 543

20.2.3 System.IO.FileInfo类 544

20.3对文件夹进行操作 546

20.3.1使用System.IO.Directory和System.IO.DirectoryInfo类对目录进行操作 546

20.3.2 System.IO.Directory类 546

20.3.3 System.IO.DirectoryInfo类 548

20.4流文件概述 550

20.4.1流简介 550

20.4.2 Stream类简介 550

20.5使用流对文件进行读写 551

20.5.1使用System.IO.FileStream类对文件进行读写 551

20.5.2 System.IO.FileStream类使用示例 552

20.5.3使用BinaryReader和Binary Writer类对文件进行读写 554

20.5.4使用StreamReader和StreamWriter类对文本文件进行读写 556

20.6序列化和反序列化 556

20.6.1对象序列化简介 556

20.6.2格式器 557

20.6.3对象序列化使用示例一 557

20.6.4对象序列化使用示例二 559

20.6.5对象序列化使用示例三 562

20.7异步读取数据 564

20.7.1异步读取数据概述 564

20.7.2异步读取数据使用示例 565

20.8本章总结 566

第21章 可扩展标记语言 567

21.1 XML简介 567

21.1.1文档对象模型 568

21.1.2 XML Path Language 569

21.1.3 XSL 569

21.1.4 XML Schemas 570

21.1.5 .NET中的XML相关类 570

21.2使用XML DOM进行编程 571

21.2.1创建XML文档 573

21.2.2向XML文档添加元素 574

21.2.3更新XML文档中的元素 575

21.2.4删除XML文档中的元素 578

21.2.5加载和保存XML文档 579

21.3 XML和相关的数据 580

21.3.1 XML与DataSet类 583

21.3.2 XML模式与DataSet类 585

21.3.3遍历DataSet类中的关系 587

21.4 XPath 590

21.4.1 XPath简介 590

21.4.2 XPath使用示例 590

21.4.3 XPath示例讲解 594

21.5 XSL转换 595

21.5.1 XSL转换示例一 596

21.5.2 XSL转换示例讲解 599

21.5.3 XSL转换示例二 600

21.6本章总结 602

第22章 多线程编程 603

22.1多线程编程原理 603

22.1.1多线程编程示例一 603

22.1.2多线程编程示例二 604

22.1.3多线程编程示例三 605

22.1.4线程的工作原理 607

22.1.5线程和进程 607

22.1.6何时需要使用多线程 608

22.1.7何时不要使用多线程 608

22.2创建并开始一个线程 608

22.2.1创建并开始一个线程 608

22.2.2向ThreadStart传递参数 610

22.2.3命名线程 612

22.2.4前台和后台线程 612

22.2.5线程属性 613

22.2.6异常处理 613

22.3线程同步 615

22.3.1线程阻塞的方法 615

22.3.2 Sleeping和Spinning 616

22.3.3 Joining一个线程 617

22.4线程安全 617

22.4.1线程安全概述 618

22.4.2选择一个同步对象 619

22.4.3嵌套锁 620

22.4.4何时上锁 621

22.4.5效率考虑 622

22.4.6线程安全与.NET Framework 622

22.5中断和取消 624

22.5.1中断 624

22.5.2取消 625

22.6线程状态 625

22.7等待处理 626

22.7.1自动设置方法简述 626

22.7.2自动设置方法示例一 627

22.7.3自动设置方法示例二 628

22.7.4自动设置方法示例三 630

22.7.5手动设置方法 632

22.7.6互斥量 632

22.7.7信号量 633

22.7.8 WaitAny、WaitAll和SignalAndWait方法 634

22.8同步性作用域 634

22.9套间线程和Windows窗体 637

22.9.1套间线程概述 637

22.9.2详解套间模型 638

22.9.3 Control.Invoke方法 638

22.10 BackgroundWorker组件 638

22.10.1 BackgroundWorker组件概述 638

22.10.2 BackgroundWorker组件编程示例一 639

22.10.3 BackgroundWorker组件编程示例二 640

22.10.4 BackgroundWorker组件编程示例三 642

22.11 ReaderWriterLockSlim类和ReaderWriterLock类 643

22.11.1用于读/写操作的锁的概述 643

22.11.2 ReaderWriterLockSlim类 644

22.11.3用于读/写操作的锁的使用说明 645

22.12线程池 647

22.13异步代理 648

22.14计时器 650

22.15局部存储 652

22.16本章总结 652

第6篇 Web数据库开发 654

第23章 数据库基础知识 654

23.1 SQL Server概述 654

23.2数据表的各种操作 655

23.2.1创建、修改和删除表 655

23.2.2操纵表中的数据 656

23.2.3主键约束 659

23.2.4外键约束 660

23.2.5唯一性约束 660

23.2.6 CHECK约束 661

23.2.7默认约束 661

23.3存储过程 661

23.3.1创建存储过程 662

23.3.2执行和删除存储过程 663

23.3.3 SQL Server 2005中的存储过程向导 663

23.4触发器 665

23.4.1创建和使用触发器 665

23.4.2 SQL Server 2005中的触发器向导 666

23.5本章总结 667

第24章 ADO.NET数据库编程 668

24.1 ADO.NET介绍 668

24.1.1什么是ADO.NET 668

24.1.2 System.Data命名空间 669

24.2 DataSet和DataTable类 670

24.2.1 DataTable类成员 670

24.2.2创建DataTable 672

24.2.3遍历DataTable的记录 675

24.2.4接受和回滚DataTable的更改 677

24.2.5 DataSet类成员 680

24.2.6使用DataSet类 681

24.2.7接受和回滚DataSet的更改 686

24.3 SQL Server数据库访问 687

24.3.1数据库访问步骤 687

24.3.2用SqlConnection连接数据库 688

24.3.3用SqlCommand执行SQL命令 691

24.3.4用SqlDataReader读取数据库记录 694

24.3.5用SqlDataAdapter获取数据库记录 697

24.3.6用SqlDataAdapter更改数据库记录 700

24.4 Access数据库访问 702

24.4.1 System.Data.OleDb命名空间 703

24.4.2 Access数据库访问 703

24.5使用数据库访问控件 704

24.5.1用DataGridView控件修改记录 704

24.5.2用BindingNavigator控件导航记录 707

24.6本章总结 707

第25章 ASP.NET技术入门 709

25.1概述 709

25.1.1认识ASP.NET 709

25.1.2 Web命名空间 710

25.1.3创建Web应用程序 710

25.2使用ASP.NET控件 712

25.2.1用TextBox控件实现文本输入 712

25.2.2用Button控件实现按钮 714

25.2.3用HyperLink控件实现超链接 716

25.2.4用DropDownList、 ListBox等实现列表 717

25.2.5用Menu控件实现菜单导航 718

25.3网页开发实例 720

25.3.1设计留言本网站 721

25.3.2欢迎页面实现 722

25.3.3添加留言页面实现 723

25.3.4查看留言页面实现 727

25.3.5发布留言板网站 730

25.4本章总结 732

第26章 服务器端控件详解 733

26.1概述 733

26.1.1认识服务器控件 733

26.1.2服务器控件与HTML控件的区别 733

26.2数据操作控件 734

26.2.1使用SqlDataSource控件连接数据 734

26.2.2使用SqlDataSource控件连接到数据库 735

26.2.3使用GridView控件显示数据库中的数据 740

26.2.4使用DetailsView控件显示特定记录 742

26.3验证控件 746

26.3.1限制空字段控件RequiredFieldValidator 746

26.3.2比较两个字段控件CompareValidator 747

26.3.3检查指定范围控件RangeValidator 750

26.3.4表达式验证控件RegularExpressionValidator 750

26.3.5自定义验证控件CustomValidator 751

26.3.6错误信息汇总控件ValidationSummary 754

26.4用户控件 756

26.5本章总结 759

第7篇 .NET 3.5的新增功能 762

第27章 WPF框架 762

27.1 WPF概述 762

27.1.1 WPF基础架构 762

27.1.2 WPF相关技术 763

27.2 WPF应用程序 764

27.2.1 WPF编程 764

27.2.2 WPF应用程序 768

27.2.3 WPF浏览器应用程序 770

27.3简单WPF实例 772

27.3.1 ListBox控件的使用与控件属性 772

27.3.2使用Hyperlink控件实现多页面切换 776

27.3.3使用DockPanel布局控件 777

27.3.4使用StackPanel布局控件 779

27.3.5使用数据源集合实现多数据绑定 780

27.3.6属性变更引起依赖数据绑定实例 783

27.3.7使用Brush填充图形 787

27.3.8使用Storyboard实现动画 794

27.3.9使用Storyboard实现控件的翻转 796

27.4本章总结 798

第28章 WCF框架 799

28.1 WCF基础 799

28.1.1 WCF架构 799

28.1.2 WCF模型 800

28.2创建WCF服务和客户端 801

28.2.1创建WCF应用程序 801

28.2.2定义WCF服务协定 802

28.2.3实现WCF服务 803

28.2.4运行WCF服务 804

28.2.5创建WCF客户端 806

28.2.6配置WCF客户端 807

28.2.7使用WCF客户端 809

28.3 WCF技术 811

28.3.1在WCF中使用会话 811

28.3.2在WCF中使用事务 812

28.4本章总结 814

第29章 WWF框架 815

29.1概述 815

29.1.1 WWF框架 815

29.1.2框架元素概述 816

29.2 WWF应用开发 817

29.2.1创建WWF应用程序 817

29.2.2 WWF活动简介 820

29.2.3 WWF服务简介 822

29.3通过WWF创建工作流应用 823

29.3.1创建顺序工作流 823

29.3.2创建带参数的顺序工作流 829

29.3.3创建状态机工作流 833

29.4本章总结 840

第30章 语言集成查询LINQ 841

30.1 LINQ概述 841

30.1.1 LINQ查询概述 841

30.1.2创建简单LINQ查询 842

30.2 LINQ语言基础 843

30.2.1 LINQ查询表达式简介 843

30.2.2 LINQ查询语法和方法语法 845

30.2.3使用LINQ进行数据合并 848

30.2.4使用LINQ进行数据转换 849

30.3 LINQ简单对象模型与查询 851

30.3.1 LINQ To SQL查询 851

30.3.2 LINQ To DataSet查询 855

30.3.3 LINQ To XML查询 856

30.3.4 LINQ To Object查询 858

30.4本章总结 860

第8篇 综合案例 862

第31章 电子购物商城 862

31.1系统总体设计 862

31.1.1系统功能描述 862

31.1.2 WebShopping应用程序组成 864

31.1.3数据库表设计 865

31.1.4数据库表之间关系设计 869

31.2系统通用类和模块设计 870

31.2.1系统常量和枚举设计 870

31.2.2系统常用操作设计 870

31.2.3标题模块设计 872

31.2.4分页模块设计 873

31.2.5系统级联样式表设计 878

31.2.6系统皮肤设计 878

31.2.7 Web.config配置文件设计 879

31.2.8数据库实体类设计 880

31.3电子购物商城首页 883

31.3.1 Default.aspx页面 883

313.2搜索模块 887

31.3.3登录模块 888

31.3.4新闻模块 890

31.3.5公告模块 892

31.4用户注册和登录 894

31.4.1注册用户信息 894

31.4.2提交用户信息 898

31.4.3用户登录 902

31.4.4退出系统 904

31.5浏览商品、购物车和订单 905

31.5.1查看商品 905

31.5.2评论商品 909

31.5.3购物车组件设计 913

31.5.4购买商品 914

31.5.5查看购物车 917

31.5.6创建订单编号 921

31.5.7创建订单 922

31.5.8发布留言 927

31.6商品搜索 930

31.6.1简单搜索 930

31.6.2高级搜索 933

31.7用户信息中心 937

31.7.1用户信息首页 938

31.7.2动态加载操作菜单 940

31.7.3查看个人信息 942

31.7.4修改个人信息 944

31.7.5修改密码 949

31.7.6查看我的订单 952

31.8商品及其分类管理 956

31.8.1商品分类管理 957

31.8.2动态加载商品分类层次结构 961

31.8.3添加商品分类 963

31.8.4修改商品分类 966

31.8.5商品管理 969

31.8.6动态加载商品分类层次树 976

31.8.7添加商品 978

31.8.8修改商品 982

31.8.9商品图片管理 986

31.8.10显示商品图片 991

31.8.11商品评论管理 992

31.9系统信息中心 997

31.9.1新闻管理 998

31.9.2发布新闻 1002

31.9.3修改新闻 1005

31.9.4发布公告 1008

31.9.5留言管理 1011

31.10系统用户和角色管理 1015

31.10.1角色管理 1015

31.10.2添加角色 1019

31.10.3修改角色 1021

31.10.4用户管理 1024

31.10.5添加管理员 1029

31.11本章总结 1033