
第1篇 入 門 篇
第1章 搭建C#程序開發環境
(視頻講解:36分鐘)
1.1 C#語言簡介
1.1.1 什么是C#語言
1.1.2 C#的應用領域
1.1.3 認識.NET Framework
1.1.4 C#與.NET的關系
1.2 C#開發環境概述
1.2.1 Visual Studio開發環境
1.2.2 數據庫
1.3 Visual Studio 2012開發環境
1.3.1 系統必備
1.3.2 安裝Visual Studio 2012
1.3.3 啟動Visual Studio 2012
1.3.4 卸載Visual Studio 2012
1.4 安裝Visual Studio開發幫助
1.5 熟悉Visual Studio 2012開發環境
1.5.1 創建項目
1.5.2 菜單欄
1.5.3 工具欄
1.5.4 解決方案資源管理器
1.5.5 “工具箱”窗口
1.5.6 “錯誤列表”窗口
1.5.7 “輸出”窗口
1.6 本章常見錯誤
1.6.1 C#和.NET有什么關系
1.6.2 Visual Studio 2012開發環境安裝不上
1.7 本章小結
1.8 跟我上機
第2章 掌握C#語言基礎
(視頻講解:2小時)
2.1 代碼編寫規則
2.1.1 代碼書寫規則
2.1.2 代碼注釋及規則
2.2 數據類型
2.2.1 值類型的使用
2.2.2 引用類型的使用
2.3 變量和常量
2.3.1 變量的聲明和賦值
2.3.2 定義和使用常量
2.4 數據類型轉換
2.4.1 隱式類型轉換
2.4.2 顯式類型轉換
2.4.3 裝箱和拆箱
2.5 C#中的運算符
2.5.1 算術運算符
2.5.2 賦值運算符
2.5.3 關系運算符
2.5.4 邏輯運算符
2.5.5 移位運算符
2.5.6 其他特殊運算符
2.5.7 運算符的優先級
2.6 綜合應用
2.6.1 利用運算符判斷用戶名稱和密碼
2.6.2 加密用戶密碼等重要的數據信息
2.6.3 簡單加法計算器
2.7 本章常見錯誤
2.7.1 類型轉換時產生的錯誤
2.7.2 使用拆箱操作時出現的錯誤
2.8 本章小結
2.9 跟我上機
第1篇 入 門 篇
第1章 搭建C#程序開發環境
(視頻講解:36分鐘)
1.1 C#語言簡介
1.1.1 什么是C#語言
1.1.2 C#的應用領域
1.1.3 認識.NET Framework
1.1.4 C#與.NET的關系
1.2 C#開發環境概述
1.2.1 Visual Studio開發環境
1.2.2 數據庫
1.3 Visual Studio 2012開發環境
1.3.1 系統必備
1.3.2 安裝Visual Studio 2012
1.3.3 啟動Visual Studio 2012
1.3.4 卸載Visual Studio 2012
1.4 安裝Visual Studio開發幫助
1.5 熟悉Visual Studio 2012開發環境
1.5.1 創建項目
1.5.2 菜單欄
1.5.3 工具欄
1.5.4 解決方案資源管理器
1.5.5 “工具箱”窗口
1.5.6 “錯誤列表”窗口
1.5.7 “輸出”窗口
1.6 本章常見錯誤
1.6.1 C#和.NET有什么關系
1.6.2 Visual Studio 2012開發環境安裝不上
1.7 本章小結
1.8 跟我上機
第2章 掌握C#語言基礎
(視頻講解:2小時)
2.1 代碼編寫規則
2.1.1 代碼書寫規則
2.1.2 代碼注釋及規則
2.2 數據類型
2.2.1 值類型的使用
2.2.2 引用類型的使用
2.3 變量和常量
2.3.1 變量的聲明和賦值
2.3.2 定義和使用常量
2.4 數據類型轉換
2.4.1 隱式類型轉換
2.4.2 顯式類型轉換
2.4.3 裝箱和拆箱
2.5 C#中的運算符
2.5.1 算術運算符
2.5.2 賦值運算符
2.5.3 關系運算符
2.5.4 邏輯運算符
2.5.5 移位運算符
2.5.6 其他特殊運算符
2.5.7 運算符的優先級
2.6 綜合應用
2.6.1 利用運算符判斷用戶名稱和密碼
2.6.2 加密用戶密碼等重要的數據信息
2.6.3 簡單加法計算器
2.7 本章常見錯誤
2.7.1 類型轉換時產生的錯誤
2.7.2 使用拆箱操作時出現的錯誤
2.8 本章小結
2.9 跟我上機
第3章 流程控制語句
(視頻講解:54分鐘)
3.1 條件選擇語句
3.1.1 使用if…else語句實現條件選擇
3.1.2 使用switch語句實現多分支選擇
3.2 循環語句的使用
3.2.1 使用while語句實現代碼循環
3.2.2 使用do…while語句實現至少執行一次循環
3.2.3 使用for語句實現代碼循環
3.2.4 使用foreach語句遍歷數據集合
3.3 跳轉語句
3.3.1 break語句
3.3.2 continue語句
3.3.3 goto語句
3.3.4 return語句
3.4 綜合應用
3.4.1 利用if…else語句判斷分數是否及格
3.4.2 打印九九乘法表
3.4.3 利用for循環實現完數的計算
3.5 本章常見錯誤
3.5.1 使用循環語句不慎產生死循環的錯誤
3.5.2 關于return語句的問題
3.6 本章小結
3.7 跟我上機
第4章 字符與字符串的使用
(視頻講解:45分鐘)
4.1 字符類Char的使用
4.1.1 Char類概述
4.1.2 Char類的使用
4.1.3 轉義字符
4.2 字符串類String的使用
4.2.1 String類概述
4.2.2 String類的使用
4.2.3 比較字符串
4.2.4 格式化字符串
4.2.5 截取字符串
4.2.6 分割字符串
4.2.7 插入和填充字符串
4.2.8 刪除字符串
4.2.9 復制字符串
4.2.10 替換字符串
4.3 可變字符串類StringBuilder類
4.3.1 StringBuilder類的定義
4.3.2 StringBuilder類的使用
4.3.3 StringBuilder類與String類的區別
4.4 綜合應用
4.4.1 將漢字轉換為拼音
4.4.2 獲取字符串中漢字的個數
4.5 本章常見錯誤
4.5.1 把字符串當作值類型使用
4.5.2 string和String的認識誤區
4.6 本章小結
4.7 跟我上機
第5章 數組和集合
(視頻講解:52分鐘)
5.1 數組概述
5.2 一維數組的聲明和使用
5.2.1 一維數組的聲明
5.2.2 一維數組的使用
5.3 二維數組的聲明和使用
5.3.1 二維數組的聲明
5.3.2 二維數組的使用
5.3.3 動態數組的聲明及使用
5.4 數組的基本操作
5.4.1 數組的遍歷
5.4.2 添加/刪除數組元素
5.4.3 對數組進行排序
5.5 ArrayList類
5.5.1 ArrayList類概述
5.5.2 ArrayList元素的添加
5.5.3 ArrayList元素的刪除
5.5.4 ArrayList的遍歷
5.6 綜合應用
5.6.1 刪除數組元素后改變其長度
5.6.2 向班級集合中添加學生信息
5.7 本章常見錯誤
5.7.1 使用for刪除集合中元素時的錯誤
5.7.2 C#數組和C++數組混淆的問題
5.7.3 遍歷ArrayList數組時可能存在的錯誤
5.8 本章小結
5.9 跟我上機
第6章 面向對象程序設計
(視頻講解:1小時25分鐘)
6.1 面向對象編程概述
6.2 屬性的定義及使用
6.2.1 屬性概述
6.2.2 屬性的定義
6.2.3 屬性的使用
6.3 方法的聲明及使用
6.3.1 方法概述
6.3.2 方法修飾符
6.3.3 方法的聲明
6.3.4 方法的分類
6.3.5 重載方法的實現
6.4 結構的定義及使用
6.4.1 結構概述
6.4.2 結構的定義
6.4.3 結構的使用
6.5 類與對象詳解
6.5.1 類的概念
6.5.2 類的聲明
6.5.3 構造函數和析構函數
6.5.4 對象的聲明和實例化
6.5.5 類與對象的關系
6.6 面向對象特性之封裝
6.6.1 封裝概述
6.6.2 封裝的實現
6.7 面向對象特性之繼承
6.7.1 繼承概述
6.7.2 繼承的實現
6.7.3 單繼承的使用
6.7.4 多重繼承的使用
6.8 面向對象特性之多態
6.8.1 多態概述
6.8.2 多態的實現
6.9 綜合應用
6.9.1 使用面向對象思想實現簡單計算器
6.9.2 使用面向對象思想實現在字符串中查找數字
6.10 本章常見錯誤
6.10.1 類可以有多少個父類,是否可以實現多個接口
6.10.2 被protected修飾的屬性/方法在何處可以訪問
6.10.3 能否將非靜態的方法覆寫成靜態方法
6.10.4 為什么不能指定接口中方法的修飾符
6.11 本章小結
6.12 跟我上機
第7章 認識Windows窗體
(視頻講解:1小時)
7.1 Form窗體的使用
7.1.1 Form窗體概述
7.1.2 添加和刪除窗體
7.1.3 多窗體的使用
7.1.4 窗體的屬性
7.1.5 窗體的顯示與隱藏
7.1.6 窗體的事件
7.2 MDI多文檔窗體的使用
7.2.1 MDI窗體概述
7.2.2 如何設置MDI窗體
7.2.3 排列MDI子窗體
7.3 繼承窗體設計
7.3.1 繼承窗體概述
7.3.2 創建繼承窗體
7.3.3 在繼承窗體中修改繼承的控件屬性
7.4 綜合應用
7.4.1 根據桌面大小調整窗體大小
7.4.2 自定義最大化、最小化和關閉按鈕
7.4.3 窗體換膚程序
7.5 本章常見錯誤
7.5.1 項目編譯之后的.pdb文件有何用處
7.5.2 MDI主窗體中的背景為何呈現灰色
7.5.3 創建繼承窗體的兩種方法有什么區別
7.5.4 區別Modifiers屬性的3種訪問修飾符
7.6 本章小結
7.7 跟我上機
第8章 Windows應用程序的常用控件
(視頻講解:1小時34分鐘)
8.1 控件概述
8.2 控件的相關操作
8.2.1 添加控件
8.2.2 對齊控件
8.2.3 鎖定控件
8.2.4 刪除控件
8.3 文本類控件
8.3.1 標簽控件(Label控件)
8.3.2 按鈕控件(Button控件)
8.3.3 文本框控件(TextBox控件)
8.3.4 有格式文本控件(RichTextBox控件)
8.4 選擇類控件
8.4.1 下拉組合框控件(ComboBox控件)
8.4.2 復選框控件(CheckBox控件)
8.4.3 單選按鈕控件(RadioButton控件)
8.4.4 數值選擇控件(NumericUpDown控件)
8.4.5 列表控件(ListBox控件)
8.5 分組類控件
8.5.1 容器控件(Panel控件)
8.5.2 分組框控件(GroupBox控件)
8.5.3 選項卡控件(TabControl控件)
8.6 菜單、工具欄和狀態欄控件
8.6.1 菜單控件(MenuStrip控件)
8.6.2 工具欄控件(ToolStrip控件)
8.6.3 狀態欄控件(StatusStrip控件)
8.7 綜合應用
8.7.1 只允許輸入數字的TextBox控件
8.7.2 實現帶查詢功能的ComboBox控件
8.7.3 利用選擇控件實現權限設置
8.8 本章常見錯誤
8.8.1 使用Controls屬性遍歷窗體控件時產生的錯誤
8.8.2 獲取ComboBox的SelectedValue屬性時產生的錯誤
8.9 本章小結
8.10 跟我上機
第2篇 提 高 篇
第9章 Windows應用程序的高級控件
(視頻講解:1小時2分鐘)
9.1 ImageList控件(存儲圖像控件)
9.1.1 在ImageList控件中添加圖像
9.1.2 在ImageList控件中移除圖像
9.2 ListView控件(列表視圖控件)
9.2.1 在ListView控件中添加移除項
9.2.2 選擇ListView控件中的項
9.2.3 為ListView控件中的項添加圖標
9.2.4 在ListView控件中啟用平鋪視圖
9.3 TreeView控件(樹控件)
9.3.1 添加和刪除樹節點
9.3.2 獲取樹控件中選中的節點
9.3.3 為樹控件中的節點設置圖標
9.4 DateTimePicker控件(日期控件)
9.4.1 使用DateTimePicker控件顯示時間
9.4.2 使用DateTimePicker控件以自定義格式顯示日期
9.4.3 返回DateTimePicker控件中選擇的日期
9.5 其他高級控件
9.5.1 使用ErrorProvider控件驗證文本框輸入
9.5.2 使用HelpProvider控件調用幫助文件
9.5.3 使用Timer控件設置時間間隔
9.5.4 使用ProgressBar控件顯示程序運行進度條
9.6 綜合應用
9.6.1 制作一個鬧鐘計時器
9.6.2 使用TreeView控件遍歷磁盤目錄
9.7 本章常見錯誤
9.7.1 Timer組件的執行周期最大可以設置多長時間
9.7.2 ImageList中如果放入大圖片會怎么樣
9.7.3 ProgressBar控件的使用問題
9.8 本章小結
9.9 跟我上機
第10章 面向對象高級技術
(視頻講解:1小時22分鐘)
10.1 接口的使用
10.1.1 接口的概念及聲明
10.1.2 接口的實現與繼承
10.1.3 顯式接口成員實現
10.2 抽象類與抽象方法
10.2.1 抽象類概述及聲明
10.2.2 抽象方法概述及聲明
10.2.3 抽象類與抽象方法的使用
10.2.4 抽象類與接口
10.3 密封類與密封方法
10.3.1 密封類概述及聲明
10.3.2 密封方法概述及聲明
10.3.3 密封類與密封方法的使用
10.4 迭代器與分部類
10.4.1 迭代器的使用
10.4.2 分部類的使用
10.5 泛型的使用
10.5.1 類型參數T
10.5.2 泛型接口
10.5.3 泛型方法
10.6 綜合應用
10.6.1 自定義抽象類計算圓形的面積
10.6.2 使用接口作為方法參數進行編程
10.6.3 使用迭代器顯示公交車站點
10.7 本章常見錯誤
10.7.1 使用結構實現接口的問題
10.7.2 構造方法中調用虛方法的錯誤
10.7.3 泛型在不被指定的情況下是不確定的類型
10.8 本章小結
10.9 跟我上機
第11章 ADO.NET數據庫開發技術
(視頻講解:2小時8分鐘)
11.1 ADO.NET概述
11.2 使用Connection連接數據庫
11.2.1 熟悉Connection對象
11.2.2 連接數據庫字符串
11.2.3 使用SqlConnection對象連接數據庫
11.3 使用Command對象操作數據
11.3.1 熟悉Command對象
11.3.2 設置數據源類型
11.3.3 執行SQL語句
11.4 使用DataReader對象讀取數據
11.4.1 理解節省內存的DataReader對象
11.4.2 使用DataReader對象讀取數據
11.5 使用DataSet和DataAdapter查詢數據
11.5.1 離線模式核心對象——DataSet對象
11.5.2 橋梁架設工程師——DataAdapter對象
11.5.3 填充DataSet數據集
11.5.4 更新數據源
11.6 綜合應用
11.6.1 使用二進制存儲用戶頭像
11.6.2 使用存儲過程實現員工自動編號
11.6.3 使用交叉表統計商品銷售信息
11.7 本章常見錯誤
11.7.1 用DataReader讀取數據時出現錯誤
11.7.2 混淆.NET和SQL Server中的“空值”
11.7.3 以DataReader作為返回類型的陷阱
11.8 本章小結
11.9 跟我上機
第12章 數據綁定控件的使用
(視頻講解:50分鐘)
12.1 DataGridView控件的使用
12.2 BindingSource組件的使用
12.3 BindingNavigator控件的使用
12.4 綜合應用
12.4.1 在DataGridView控件中添加“合計”和“平均值”
12.4.2 通過DataGridView分頁查看用戶信息
12.5 本章常見錯誤
12.5.1 清除DataGridView中數據時產生的錯誤
12.5.2 在DataGridView中綁定自增列產生的錯誤
12.6 本章小結
12.7 跟我上機
第13章 LINQ數據訪問技術
(視頻講解:1小時2分鐘)
13.1 LINQ基礎
13.1.1 LINQ概述
13.1.2 使用var創建隱型局部變量
13.1.3 Lambda表達式的使用
13.1.4 LINQ查詢表達式
13.2 LINQ操作SQL Server數據庫
13.2.1 使用LINQ查詢SQL Server數據庫
13.2.2 使用LINQ管理SQL Server數據庫
13.3 LINQ操作其他數據
13.3.1 使用LINQ操作數組和集合
13.3.2 使用LINQ操作DataSet數據集
13.3.3 使用LINQ操作XML
13.4 綜合應用
13.4.1 使用LINQ技術獲取文件詳細信息
13.4.2 使用LINQ技術分類查詢公司員工薪水
13.4.3 使用LINQ技術防止SQL注入式攻擊
13.5 本章常見錯誤
13.5.1 使用了未賦值的局部變量var
13.5.2 使用LINQ的First方法時產生的錯誤
13.6 本章小結
13.7 跟我上機
第14章 文件及數據流技術
(視頻講解:1小時22分鐘)
14.1 System.IO命名空間
14.2 文件基本操作
14.2.1 File類和FileInfo類
14.2.2 判斷文件是否存在
14.2.3 創建文件
14.2.4 打開文件
14.2.5 復制文件
14.2.6 移動文件
14.2.7 刪除文件
14.2.8 獲取文件基本信息
14.3 文件夾基本操作
14.3.1 Directory類和DirectoryInfo類
14.3.2 判斷文件夾是否存在
14.3.3 創建文件夾
14.3.4 移動文件夾
14.3.5 刪除文件夾
14.3.6 遍歷文件夾
14.4 數據流操作
14.4.1 流操作類介紹
14.4.2 文件流類
14.4.3 文本文件的寫入與讀取
14.4.4 二進制文件的寫入與讀取
14.5 綜合應用
14.5.1 文件批量重命名的實現
14.5.2 對指定文件夾中的文件進行分類存儲
14.6 本章常見錯誤
14.6.1 因讀寫文件時編碼格式不一致而產生的錯誤
14.6.2 讀寫二進制文件的錯誤
14.7 本章小結
14.8 跟我上機
第15章 GDI+繪圖技術
(視頻講解:1小時12分鐘)
15.1 GDI+繪圖基礎
15.1.1 GDI+概述
15.1.2 創建Graphics對象
15.1.3 創建Pen對象
15.1.4 創建Brush對象
15.2 基本圖形繪制
15.2.1 GDI+中的直線和矩形
15.2.2 GDI+中的橢圓、弧和扇形
15.2.3 GDI+中的多邊形
15.3 綜合應用
15.3.1 應用GDI+技術實現圖像的水印效果
15.3.2 抓取網站整頁面
15.4 本章常見錯誤
15.4.1 如何獲取一張圖片中某個點的RGB值
15.4.2 窗體失去焦點時,圖片消失的錯誤
15.5 本章小結
15.6 跟我上機
第16章 線程的使用
(視頻講解:56分鐘)
16.1 線程概述
16.1.1 了解單線程
16.1.2 多線程概述
16.2 線程的基本操作
16.2.1 線程基礎——Thread類
16.2.2 線程的創建
16.2.3 線程的掛起與恢復
16.2.4 線程休眠
16.2.5 終止線程
16.2.6 線程的優先級
16.3 線程同步
16.3.1 使用lock關鍵字實現線程同步
16.3.2 使用Monitor類實現線程同步
16.3.3 使用Mutex類實現線程同步
16.4 綜合應用
16.4.1 使用多線程制作端口掃描工具
16.4.2 使用線程控制向窗體中拖放圖片并顯示
16.4.3 使用線程掃描局域網IP地址
16.5 本章常見錯誤
16.5.1 使用值類型進行線程同步的錯誤
16.5.2 多個線程調用同一靜態方法的運行結果問題
16.6 本章小結
16.7 跟我上機
第17章 網絡編程技術
(視頻講解:52分鐘)
17.1 計算機網絡基礎
17.1.1 局域網與互聯網介紹
17.1.2 網絡協議介紹
17.1.3 端口及套接字介紹
17.2 網絡編程基礎
17.2.1 System.Net命名空間及相關類的使用
17.2.2 System.Net.Sockets命名空間及相關類的使用
17.2.3 System.Net.Mail命名空間及相關類的使用
17.3 綜合應用
17.3.1 創建Web頁面瀏覽器
17.3.2 設計點對點聊天程序
17.3.3 遠程關閉與重啟計算機
17.4 本章常見錯誤
17.4.1 無法連接到遠程服務器的錯誤
17.4.2 解決網絡編程中的套接字錯誤
17.5 本章小結
17.6 跟我上機
第18章 使用C#操作注冊表
(視頻講解:20分鐘)
18.1 注冊表基礎
18.1.1 Windows注冊表概述
18.1.2 Registry類和RegistryKey類的使用
18.2 使用C#操作注冊表
18.2.1 讀取注冊表中信息
18.2.2 創建和修改注冊表信息
18.2.3 刪除注冊表中信息
18.3 綜合應用
18.3.1 利用網卡序列號設計軟件注冊程序
18.3.2 根據CPU序列號、磁盤序列號設計軟件注冊程序
18.4 本章常見錯誤
18.4.1 C#讀取注冊表的權限問題
18.4.2 使用C#修改注冊表DWORD鍵時出現的錯誤
18.5 本章小結
18.6 跟我上機
第19章 程序調試與錯誤處理
(視頻講解:34分鐘)
19.1 程序調試
19.1.1 斷點操作
19.1.2 開始執行
19.1.3 中斷執行
19.1.4 停止執行
19.1.5 單步執行和逐過程執行
19.1.6 運行到指定位置
19.2 異常處理語句
19.2.1 使用throw語句拋出異常
19.2.2 使用try…catch語句捕捉異常
19.2.3 使用try…catch…finally語句捕捉異常
19.3 綜合應用
19.3.1 使用異常處理語句捕獲數據庫連接異常
19.3.2 通過插入斷點查看局部變量的值
19.4 本章常見錯誤
19.4.1 所有異常都使用try…catch語句捕獲的問題
19.4.2 在try語句中使用return語句,finally語句會不會執行
19.5 本章小結
19.6 跟我上機
第3篇 實 戰 篇
第20章 C#游戲開發
(視頻講解:1小時18分鐘)
20.1 華容道游戲
20.1.1 概述
20.1.2 設計思路
20.1.3 技術要點
20.1.4 實現過程
20.2 俄羅斯方塊
20.2.1 概述
20.2.2 設計思路
20.2.3 技術要點
20.2.4 實現過程
20.3 網絡五子棋游戲
20.3.1 概述
20.3.2 設計思路
20.3.3 技術要點
20.3.4 實現過程
20.4 本章小結
第21章 企業進銷存管理系統
(視頻講解:1小時42分鐘)
21.1 開發背景
21.2 需求分析
21.3 系統設計
21.3.1 系統目標
21.3.2 系統功能結構
21.3.3 系統預覽
21.3.4 業務流程圖
21.3.5 程序運行環境
21.3.6 數據庫分析
21.3.7 數據庫概念設計
21.3.8 數據庫邏輯結構設計
21.3.9 數據表邏輯關系
21.3.10 文件夾組織結構
21.4 公共類設計
21.4.1 DataBase公共類
21.4.2 BaseInfo公共類
21.5 登錄模塊設計
21.5.1 設計登錄窗體
21.5.2 按Enter鍵時移動鼠標焦點
21.5.3 登錄功能的實現
21.6 系統主窗體設計
21.6.1 設計系統主窗體
21.6.2 設計菜單欄
21.7 庫存商品管理模塊設計
21.7.1 設計庫存商品管理窗體
21.7.2 顯示庫存商品所有信息
21.7.3 添加/修改庫存商品信息
21.7.4 刪除庫存商品信息
21.7.5 查詢庫存商品信息
21.8 進貨管理模塊設計
21.8.1 設計進貨管理窗體
21.8.2 自動生成進貨單編號
21.8.3 添加進貨單信息
21.9 商品銷售排行模塊設計
21.9.1 設計商品銷售排行窗體
21.9.2 綁定經手人及往來單位
21.9.3 顯示商品銷售排行
21.10 庫存盤點模塊設計
21.10.1 設計庫存盤點窗體
21.10.2 顯示庫存商品信息
21.10.3 查詢庫存商品信息
21.10.4 對指定商品進行盤點
21.11 開發常見問題與解決
21.11.1 為什么無法登錄系統
21.11.2 如何實現往來對賬功能
21.11.3 清理系統數據時需要注意的問題
21.11.4 數據庫還原不成功應該如何解決
21.12 本章小結