本書從初學者角度出發(fā),通過通俗易懂的語言和大量生動典型的實例,由淺入深、循序漸進地介紹使用C#進行 WinForms 程序開發(fā)的常用技術和方法。全書共 16 章,包括搭建 C#開發(fā)環(huán)境、第一個 C#程序、數據類型、運算符、條件語句、循環(huán)語句、數組、字符串、面向對象編程基礎、面向對象編程進階、Windows 窗體編程、Windows 控件的使用、數據庫基礎、使用 C#操作數據庫、文件及文件夾操作、庫存管理系統等內容。
本書附有配套資源包。配套資源包提供了書中所有實例和項目的源代碼,全部源代碼都經過精心調試,在 Windows 7/Windows 10 等操作系統下均能夠正常運行;另外還提供了全程視頻講解,讀者可以邊看邊學,以提高學習效率。
本書適用于 C#初中級用戶,也可作為大中專院校相關專業(yè)和培訓機構的教材。對于程序開發(fā)愛好者,本書也有非常高的參考價值。
1.循序漸進,自學有道
本書從基礎→提高→高級→項目實戰(zhàn),符合讀者學習路線;
2.關鍵技術,實例解析
全書通過“實例”的形式,將知識融入到實例講解中,81個實例教學,使知識與實例相輔相成;
3.書課結合,資源豐富
本書提供了強大的網絡支持和服務,配套22小時視頻教學,通過掃碼,可以獲得源碼、視頻課程、課后練習題等配套資源;
4. 享增值服務
購買紙書可享明日科技“程序開發(fā)資源庫”200 元優(yōu)惠券;
6. 技術服務完善
作者團隊提供企業(yè)QQ、論壇、郵箱、客服電話、明日學院官方網站等多渠道的技術支持與服務,在線為讀者答疑解惑。
明日科技
一個擁有軟件開發(fā)和項目實施方面經驗的學習型技術團隊,利用多年積累的專業(yè)知識,已出版了“從入門到精通”“軟件開發(fā)實戰(zhàn) 1200 例”“軟件開發(fā)實戰(zhàn)寶典”“軟件項目開發(fā)全程實錄”等系列叢書,是國內排名前列的編程圖書品牌。
第 1章 搭建 C# 開發(fā)環(huán)境
1.1 C# 概述 001
1.1.1 C# 語言及其特點 001
1.1.2 認識 .NET Framework 001
1.1.3 C# 與 .NET Framework 002
1.1.4 C# 的應用領域 002
1.2 Visual Studio 2019 的下載及安裝 003
1.2.1 安裝 Visual Studio 2019 的必備條件 003
1.2.2 下載 Visual Studio 2019 003
1.2.3 安裝 Visual Studio 2019 004
1.2.4 卸載 Visual Studio 2019 006
1.3 熟悉 Visual Studio 2019 開發(fā)環(huán)境 007
1.3.1 創(chuàng)建控制臺應用程序 007
1.3.2 菜單欄 009
1.3.3 工具欄 009
1.3.4 解決方案資源管理器 010
1.3.5 “工具箱”窗口 010
1.3.6 “屬性”窗口 011
1.3.7 “錯誤列表”窗口 011
1.4 課后測試 012
第 2章 第 一個 C# 程序
2.1 編寫第 一個 C# 程序 013
2.2 C# 程序結構預覽 016
2.2.1 命名空間 016
2.2.2 類 018
2.2.3 關鍵字與標識符 018
2.2.4 Main 方法 020
2.2.5 C# 語句 021
2.2.6 注釋 023
2.2.7 一個完整的 C# 程序 024
2.3 程序編寫規(guī)范 025
2.3.1 代碼編寫規(guī)則 026
2.3.2 命名規(guī)范 026
2.4 課后測試 028
2.5 上機實戰(zhàn) 029
第 3章 數據類型
3.1 數據類型及變量 031
3.1.1 變量是什么 031
3.1.2 聲明變量 032
3.1.3 簡單數據類型 033
3.1.4 變量的初始化 042
3.1.5 變量的作用域 043
3.2 常量 045
3.2.1 常量是什么 045
3.2.2 常量的分類 045
3.3 數據類型轉換 047
3.3.1 隱式類型轉換 047
3.3.2 顯式類型轉換 047
3.3.3 使用 Convert 類進行轉換 048
3.4 課后測試 049
3.5 上機實戰(zhàn) 050
第 4章 運算符
4.1 算術運算符 052
4.2 自增、自減運算符 053
4.3 賦值運算符 054
4.4 關系運算符 057
4.5 邏輯運算符 058
4.6 位運算符 060
4.7 移位運算符 061
4.8 條件運算符 063
4.9 運算符優(yōu)先級與結合性 065
4.10 課后測試 066
4.11 上機實戰(zhàn) 066
第 5章 條件語句
5.1 if 條件判斷語句 068
5.1.1 決策分支 068
5.1.2 if 語句 069
5.2 switch 多分支語句 079
5.2.1 switch 語句 079
5.2.2 switch 與 if…else if…else 語句的區(qū)別 081
5.3 課后測試 082
5.4 上機實戰(zhàn) 083
第 6章 循環(huán)語句
6.1 while 循環(huán) 084
6.2 do…while 循環(huán) 086
6.2.1 do…while 循環(huán)的語法 086
6.2.2 while 和 do…while 語句的區(qū)別 087
6.3 for 循環(huán) 088
6.3.1 for 循環(huán)的一般形式 088
6.3.2 for 循環(huán)的變體 089
6.3.3 for 循環(huán)中逗號的應用 091
6.4 循環(huán)的嵌套 091
6.5 跳轉語句 094
6.5.1 break 語句 094
6.5.2 continue 語句 094
6.5.3 goto 語句 095
6.5.4 continue 和 break 語句的區(qū)別 096
6.6 課后測試 097
6.7 上機實戰(zhàn) 098
第 7章 數組
7.1 一維數組 099
7.1.1 數組概述 099
7.1.2 一維數組的創(chuàng)建 100
7.1.3 一維數組的初始化 101
7.1.4 一維數組的使用 102
7.2 二維數組 103
7.2.1 二維數組的創(chuàng)建 103
7.2.2 二維數組的初始化 105
7.2.3 二維數組的使用 106
7.2.4 不規(guī)則數組的定義 107
7.2.5 獲取二維數組的列數 108
7.3 數組與 Array 類 108
7.4 數組的基本操作 111
7.4.1 數組的輸入與輸出 111
7.4.2 使用 foreach 語句遍歷數組 112
7.4.3 對數組進行排序 113
7.5 數組排序算法 115
7.5.1 冒泡排序算法 115
7.5.2 選擇排序算法 117
7.6 課后測試 119
7.7 上機實戰(zhàn) 120
第 8章 字符串
8.1 字符串的聲明與初始化 122
8.1.1 聲明字符串 122
8.1.2 字符串的初始化 123
8.2 獲取字符串信息 124
8.2.1 獲取字符串長度 124
8.2.2 獲取指定位置的字符 125
8.2.3 獲取子字符串索引位置 125
8.2.4 判斷字符串首尾內容 127
8.3 字符串操作 129
8.3.1 字符串的拼接 129
8.3.2 比較字符串 130
8.3.3 字符串的大小寫轉換 132
8.3.4 格式化字符串 132
8.3.5 截取字符串 137
8.3.6 分割字符串 137
8.3.7 插入及填充字符串 138
8.3.8 刪除字符串 140
8.3.9 去除空白內容 140
8.3.10 復制字符串 141
8.3.11 替換字符串 143
8.4 可變字符串類 144
8.4.1 StringBuilder 類的定義 144
8.4.2 StringBuilder 類的使用 145
8.4.3 StringBuilder 類與 string 類的區(qū)別 146
8.5 課后測試 148
8.6 上機實戰(zhàn) 149
第 9章 面向對象編程基礎
9.1 認識面向對象 150
9.1.1 對象 150
9.1.2 類 151
9.1.3 面向對象技術的基本思想 152
9.1.4 面向對象程序設計的特點 152
9.1.5 了解面向過程編程 154
9.2 類 154
9.2.1 類的聲明 154
9.2.2 類的成員 155
9.2.3 訪問修飾符 161
9.2.4 構造函數 162
9.2.5 析構函數 165
9.3 方法 166
9.3.1 方法的聲明 166
9.3.2 方法的參數 167
9.3.3 重載方法 171
9.4 類的靜態(tài)成員 172
9.5 對象的創(chuàng)建及使用 174
9.5.1 對象的創(chuàng)建 174
9.5.2 訪問對象的屬性和行為 175
9.5.3 對象的銷毀 176
9.5.4 this 關鍵字 177
9.5.5 類與對象的關系 178
9.6 課后測試 178
9.7 上機實戰(zhàn) 179
第 10章 面向對象編程進階
10.1 繼承 180
10.1.1 使用繼承 180
10.1.2 base 關鍵字 183
10.1.3 繼承中的構造函數與析構函數 185
10.2 多態(tài) 186
10.2.1 虛方法的重寫 187
10.2.2 抽象類與抽象方法 189
10.3 接口 191
10.3.1 接口的概念及聲明 191
10.3.2 接口的實現與繼承 192
10.3.3 顯式接口成員實現 195
10.3.4 抽象類與接口 196
10.4 委托和匿名方法 197
10.4.1 委托 197
10.4.2 匿名方法 199
10.5 泛型 200
10.5.1 為什么要使用泛型 201
10.5.2 泛型類型參數 202
10.5.3 泛型方法 202
10.5.4 泛型類 203
10.6 課后測試 204
10.7 上機實戰(zhàn) 205
第 11章 Windows 窗體編程
11.1 開發(fā)應用程序的步驟 206
11.2 Form 窗體 210
11.2.1 添加和刪除窗體 210
11.2.2 多窗體的使用 211
11.2.3 窗體的屬性 212
11.2.4 窗體的顯示與隱藏 214
11.2.5 窗體的事件 216
11.3 MDI 窗體 218
11.3.1 MDI 窗體的概念 218
11.3.2 如何設置 MDI 窗體 219
11.3.3 排列 MDI 子窗體 219
11.4 課后測試 221
11.5 上機實戰(zhàn) 222
第 12章 Windows 控件的使用
12.1 控件基礎 224
12.1.1 控件概述 224
12.1.2 控件的相關操作 225
12.2 文本類控件 226
12.2.1 Label 控件 226
12.2.2 TextBox 控件 227
12.2.3 RichTextBox 控件 228
12.3 按鈕類控件 230
12.3.1 Button 控件 230
12.3.2 RadioButton 控件 232
12.3.3 CheckBox 控件 233
12.4 列表類控件 234
12.4.1 ComboBox 控件 234
12.4.2 ListBox 控件 235
12.4.3 ListView 控件 238
12.5 ImageList 控件 241
12.6 容器控件 243
12.6.1 GroupBox 控件 243
12.6.2 TabControl 控件 244
12.7 TreeView 控件 246
12.8 Timer 控件 249
12.9 ProgressBar 控件 250
12.10 菜單、工具欄和狀態(tài)欄控件 251
12.10.1 MenuStrip 控件 251
12.10.2 ToolStrip 控件 252
12.10.3 StatusStrip 控件 253
12.11 消息框 255
12.12 對話框控件 257
12.12.1 打開對話框控件 257
12.12.2 另存為對話框控件 258
12.12.3 瀏覽文件夾對話框控件 259
12.13 課后測試 260
12.14 上機實戰(zhàn) 260
第 13章 數據庫基礎
13.1 SQL Server 數據庫 262
13.1.1 SQL Server 數據庫概述 262
13.1.2 下載及安裝 SQL Server 262
13.2 數據庫常見操作 271
13.2.1 創(chuàng)建數據庫 271
13.2.2 刪除數據庫 273
13.2.3 附加數據庫 273
13.2.4 分離數據庫 274
13.2.5 執(zhí)行 SQL 腳本 274
13.3 數據表常見操作 275
13.3.1 創(chuàng)建數據表 275
13.3.2 刪除數據表 277
13.3.3 重命名數據表 277
13.3.4 在表結構中添加新字段 278
13.3.5 在表結構中刪除字段 279
13.4 數據的增刪改查 279
13.4.1 查看數據 279
13.4.2 錄入數據 280
13.4.3 修改數據 280
13.4.4 刪除數據 281
13.5 SQL 語句基礎 281
13.5.1 SQL 語言簡介 281
13.5.2 簡單 SQL 語句的應用 282
13.6 課后測試 286
13.7 上機實戰(zhàn) 287
第 14章 使用 C# 操作數據庫
14.1 ADO.NET 概述 288
14.1.1 ADO.NET 對象模型 288
14.1.2 數據訪問命名空間 289
14.2 Connection 數據連接對象 289
14.2.1 熟悉 Connection 對象 290
14.2.2 數據庫連接字符串 290
14.2.3 應用 Connection 對象連接數據庫 291
14.3 Command 命令執(zhí)行對象 292
14.3.1 熟悉 Command 對象 292
14.3.2 應用 Command 對象操作數據 294
14.3.3 應用 Command 對象調用存儲過程 295
14.4 DataReader 數據讀取對象 296
14.4.1 DataReader 對象概述 296
14.4.2 使用 DataReader 對象檢索數據 297
14.5 DataSet 對象和 DataAdapter操作對象 299
14.5.1 DataSet 對象 299
14.5.2 DataAdapter 對象 300
14.5.3 填充 DataSet 數據集 301
14.5.4 DataSet 對象與 DataReader 對象的區(qū)別 301
14.6 DataGridView 控件的使用 302
14.7 Entity Framework 編程 304
14.7.1 什么是 Entity Framework 304
14.7.2 Entity Framework 實體數據模型 305
14.7.3 Entity Framework 運行環(huán)境 306
14.7.4 創(chuàng)建實體數據模型 306
14.7.5 通過 EF 對數據表進行基本操作 310
14.7.6 EF 相對于 ADO.NET 的優(yōu)勢 312
14.8 課后測試 313
14.9 上機實戰(zhàn) 314
第 15章 文件及文件夾操作
15.1 System.IO 命名空間 315
15.2 文件基本操作 316
15.2.1 File 類 317
15.2.2 FileInfo 類 318
15.2.3 判斷文件是否存在 318
15.2.4 創(chuàng)建文件 319
15.2.5 復制文件 320
15.2.6 移動文件 321
15.2.7 刪除文件 322
15.2.8 獲取文件基本信息 322
15.3 文件夾基本操作 324
15.3.1 Directory 類 324
15.3.2 DirectoryInfo 類 324
15.3.3 判斷文件夾是否存在 325
15.3.4 創(chuàng)建文件夾 326
15.3.5 移動文件夾 327
15.3.6 刪除文件夾 327
15.3.7 遍歷文件夾 328
15.4 I/O 數據流 331
15.4.1 流概述 331
15.4.2 文件流 332
15.4.3 文本文件的讀寫 336
15.5 課后測試 338
15.6 上機實戰(zhàn) 339
第 16章 庫存管理系統
16.1 開發(fā)背景 341
16.2 需求分析 341
16.3 系統設計 342
16.3.1 系統目標 342
16.3.2 系統功能結構 342
16.3.3 業(yè)務流程圖 342
16.3.4 業(yè)務邏輯編碼規(guī)則 343
16.3.5 程序運行環(huán)境 344
16.3.6 系統預覽 344
16.4 數據庫設計 346
16.4.1 數據庫概要說明 346
16.4.2 數據庫概念設計 346
16.4.3 數據庫邏輯設計 347
16.5 公共類設計 350
16.5.1 程序文件架構 350
16.5.2 DataCon 類 352
16.5.3 DataOperate 類 354
16.6 供應商信息設置模塊設計 360
16.6.1 供應商信息設置模塊概述 360
16.6.2 供應商信息設置模塊技術分析 360
16.6.3 供應商信息設置模塊實現過程 361
16.7 貨物入庫管理模塊設計 366
16.7.1 貨物入庫管理模塊概述 366
16.7.2 貨物入庫管理模塊技術分析 366
16.7.3 貨物入庫管理模塊實現過程 368
16.8 貨物出庫管理模塊設計 372
16.8.1 貨物出庫管理模塊概述 372
16.8.2 貨物出庫管理模塊技術分析 372
16.8.3 貨物出庫管理模塊實現過程 372
16.9 庫存信息查詢模塊設計 376
16.9.1 庫存信息查詢模塊概述 376
16.9.2 庫存信息查詢模塊技術分析 377
16.9.3 庫存信息查詢模塊實現過程 377
16.10 出入庫貨物年統計模塊設計 380
16.10.1 出入庫貨物年統計模塊概述 380
16.10.2 出入庫貨物年統計模塊技術分析 380
16.10.3 出入庫貨物年統計模塊實現過程 381
16.11 文件清單 382
16.12 本章總結 384