本書(shū)主要介紹C#語(yǔ)言、WinForm和WPF應(yīng)用程序開(kāi)發(fā)的基礎(chǔ)知識(shí)。全書(shū)共14章,前6章介紹C#語(yǔ)言和WinForm開(kāi)發(fā)的基礎(chǔ)知識(shí),包括開(kāi)發(fā)環(huán)境、基本數(shù)據(jù)類型、流程控制語(yǔ)句、類和結(jié)構(gòu)、接口委托與事件、泛型與LINQ、目錄與文件操作等;后8章介紹如何開(kāi)發(fā)WPF應(yīng)用程序,包括WPF控件、資源與樣式控制、動(dòng)畫與多媒體、數(shù)據(jù)綁定與數(shù)據(jù)驗(yàn)證、數(shù)據(jù)庫(kù)與實(shí)體數(shù)據(jù)模型、二維圖形圖像處理、三維圖形和三維呈現(xiàn)。同時(shí)附錄中給出了本書(shū)的上機(jī)練習(xí)和綜合實(shí)驗(yàn)。
本書(shū)提供配套的PPT課件、在VS2012下調(diào)試通過(guò)的所有參考源程序,以及書(shū)中全部習(xí)題參考解答。
本書(shū)可作為高等院校計(jì)算機(jī)及相關(guān)專業(yè)的教材,也可作為初、中級(jí)程序員的參考用書(shū)。
1.全書(shū)內(nèi)容是作者經(jīng)過(guò)多年教學(xué)驗(yàn)證的,案例都是從作者實(shí)際開(kāi)發(fā)中抽取出來(lái)的,實(shí)用性非常強(qiáng)! 2.教材配套資料全,適合教師需求! 3.與同類書(shū)籍相比,教材對(duì)基本概念的講解透徹,條理清晰,步驟詳細(xì),非常適合自學(xué)。
第1篇 C#程序設(shè)計(jì)基礎(chǔ)
第1章 C#代碼編寫基礎(chǔ)
1.1 C#語(yǔ)言和VS2012開(kāi)發(fā)環(huán)境
1.1.1 C#語(yǔ)言和.NET框架
1.1.2 VS2012開(kāi)發(fā)環(huán)境
1.2 C#項(xiàng)目的組織
1.2.1 命名空間
1.2.2 using關(guān)鍵字
1.2.3 Main方法
1.2.4 代碼注釋
1.2.5 通過(guò)斷點(diǎn)調(diào)試C#程序
1.2.6 C#代碼編寫命名規(guī)范
1.3 控制臺(tái)應(yīng)用程序
1.3.1 控制臺(tái)應(yīng)用程序的輸入與輸出
1.3.2 在控制臺(tái)應(yīng)用程序中輸出格式化數(shù)據(jù)
第1篇 C#程序設(shè)計(jì)基礎(chǔ)
第1章 C#代碼編寫基礎(chǔ)
1.1 C#語(yǔ)言和VS2012開(kāi)發(fā)環(huán)境
1.1.1 C#語(yǔ)言和.NET框架
1.1.2 VS2012開(kāi)發(fā)環(huán)境
1.2 C#項(xiàng)目的組織
1.2.1 命名空間
1.2.2 using關(guān)鍵字
1.2.3 Main方法
1.2.4 代碼注釋
1.2.5 通過(guò)斷點(diǎn)調(diào)試C#程序
1.2.6 C#代碼編寫命名規(guī)范
1.3 控制臺(tái)應(yīng)用程序
1.3.1 控制臺(tái)應(yīng)用程序的輸入與輸出
1.3.2 在控制臺(tái)應(yīng)用程序中輸出格式化數(shù)據(jù)
1.4 Windows窗體應(yīng)用程序
1.4.1 Windows窗體應(yīng)用程序的特點(diǎn)
1.4.2 Windows窗體應(yīng)用程序的啟動(dòng)和退出
1.4.3 窗體的創(chuàng)建、顯示、隱藏和關(guān)閉
1.4.4 消息框(MessageBox)
1.4.5 利用WinForm控件實(shí)現(xiàn)輸入和輸出
1.4.6 錯(cuò)誤提示(ErrorProvider)
1.5 WPF和Silverlight應(yīng)用程序
1.5.1 WPF應(yīng)用程序
1.5.2 Silverlight應(yīng)用程序
1.6 其他應(yīng)用程序模板
1.6.1 WCF應(yīng)用程序
1.6.2 ASP.NET和ASP.NET MVC應(yīng)用程序
1.6.3 Metro樣式的應(yīng)用程序
1.7 獨(dú)立應(yīng)用程序和瀏覽器運(yùn)行的應(yīng)用程序
1.7.1 服務(wù)器操作系統(tǒng)和客戶端操作系統(tǒng)的分類
1.7.2 獨(dú)立應(yīng)用程序的部署和運(yùn)行
1.7.3 Web應(yīng)用程序的部署和運(yùn)行
習(xí)題
第2章 基本數(shù)據(jù)類型和流程控制語(yǔ)句
2.1 數(shù)據(jù)類型和運(yùn)算符
2.1.1 C#的類型系統(tǒng)
2.1.2 常量與變量
2.1.3 運(yùn)算符與表達(dá)式
2.2 簡(jiǎn)單類型
2.2.1 整型
2.2.2 浮點(diǎn)型
2.2.3 布爾型(bool)
2.2.4 字符(char)
2.2.5 枚舉(enum)
2.2.6 可空類型
2.3 字符串
2.3.1 字符串的創(chuàng)建與表示形式
2.3.2 字符串的常用操作方法
2.3.3 String與StringBuilder
2.4 數(shù)組
2.4.1 一維數(shù)組
2.4.2 多維數(shù)組
2.4.3 交錯(cuò)數(shù)組
2.4.4 數(shù)組的常用操作方法
2.5 數(shù)據(jù)類型之間的轉(zhuǎn)換
2.5.1 值類型之間的數(shù)據(jù)轉(zhuǎn)換
2.5.2 值類型和引用類型之間的轉(zhuǎn)換
2.6 流程控制語(yǔ)句
2.6.1 分支語(yǔ)句
2.6.2 循環(huán)語(yǔ)句
2.6.3 跳轉(zhuǎn)語(yǔ)句
2.6.4 異常處理語(yǔ)句
習(xí)題
第3章 類和結(jié)構(gòu)
3.1 自定義類(class)和結(jié)構(gòu)(struct)
3.1.1 類的定義和成員組織
3.1.2 訪問(wèn)修飾符
3.1.3 靜態(tài)成員和實(shí)例成員
3.1.4 構(gòu)造函數(shù)和析構(gòu)函數(shù)
3.1.5 字段和局部變量
3.1.6 結(jié)構(gòu)的定義和成員組織
3.2 屬性和方法
3.2.1 屬性(Property)
3.2.2 方法
3.3 類的繼承與多態(tài)性
3.3.1 封裝
3.3.2 繼承
3.3.3 多態(tài)(new、virtual、override)
3.4 常用結(jié)構(gòu)和類的用法
3.4.1 Math類
3.4.2 DateTime結(jié)構(gòu)和TimeSpan結(jié)構(gòu)
3.4.3 秒表和計(jì)時(shí)器(Stopwatch、Timer、DispatcherTimer)
3.4.4 隨機(jī)數(shù)(Random)
習(xí)題
第4章 接口、委托與事件
4.1 接口
4.1.1 接口的聲明和實(shí)現(xiàn)
4.1.2 顯式方式實(shí)現(xiàn)接口
4.1.3 利用接口實(shí)現(xiàn)多繼承
4.2 委托
4.2.1 定義委托類型
4.2.2 通過(guò)委托調(diào)用方法
4.3 事件
4.3.1 事件的聲明和引發(fā)
4.3.2 具有標(biāo)準(zhǔn)簽名的事件
4.4 序列化與反序列化
4.4.1 序列化
4.4.2 反序列化
4.5 反射
習(xí)題
第5章 泛型與LINQ
5.1 C#的類型擴(kuò)展
5.1.1 匿名類型和隱式類型的局部變量
5.1.2 對(duì)象初始化和集合初始化
5.2 泛型和泛型集合
5.2.1 泛型的定義和引用
5.2.2 列表和排序列表
5.2.3 鏈表
5.2.4 字典和排序字典
5.2.5 隊(duì)列
5.2.6 堆棧
5.2.7 哈希表和哈希集合
5.3 LINQ查詢表達(dá)式
5.3.1 延遲執(zhí)行和立即執(zhí)行
5.3.2 from子句
5.3.3 where子句
5.3.4 orderby子句
5.3.5 group子句
5.3.6 select子句
5.3.7 查詢多個(gè)對(duì)象
5.4 Lambda表達(dá)式
5.4.1 Lambda表達(dá)式的基本用法
5.4.2 在Func和Action委托中使用Lambda表達(dá)式
5.5 LINQ to Objects
習(xí)題
第6章 目錄與文件操作
6.1 目錄和文件管理
6.1.1 Environment類和DriveInfo類
6.1.2 Path類
6.1.3 目錄管理
6.1.4 文件管理
6.2 文件的讀寫
6.2.1 文件編碼
6.2.2 文本文件的讀寫
6.2.3 StreamReader類和StreamWriter類
6.2.4 二進(jìn)制文件的讀寫
6.3 LINQ to XML
6.3.1 創(chuàng)建XML
6.3.2 查詢XML
習(xí)題
第2篇 WPF應(yīng)用程序
第7章 WPF應(yīng)用程序入門
7.1 WPF應(yīng)用程序和XAML標(biāo)記
7.1.1 Application類和App類
7.1.2 WPF應(yīng)用程序的關(guān)閉模式及Shutdown方法
7.1.3 XAML命名空間和x:前綴編程構(gòu)造
7.1.4 XAML基本語(yǔ)法
7.1.5 WPF設(shè)計(jì)器
7.2 窗口和對(duì)話框
7.2.1 WPF窗口
7.2.2 在主窗口顯示前先顯示登錄窗口或者歡迎窗口
7.2.3 窗口的外觀和行為
7.2.4 對(duì)話框
7.2.5 WPF頁(yè)和頁(yè)面導(dǎo)航
7.3 顏色
7.3.1 顏色格式
7.3.2 Brushes類和Colors類
7.3.3 Color結(jié)構(gòu)
7.4 形狀
7.4.1 形狀控件共有的屬性
7.4.2 矩形(Rectangle)
7.4.3 橢圓(Ellipse)
7.4.4 其他基本形狀
7.5 畫筆(Brush)
7.5.1 畫筆分類
7.5.2 利用WPF設(shè)計(jì)器和屬性窗口設(shè)置畫筆類型
7.5.3 純色畫筆(SolidColorBrush)
7.5.4 線性漸變畫筆(LinearGradientBrush)
7.5.5 徑向漸變畫筆(RadialGradientBrush)
7.5.6 利用WPF設(shè)計(jì)器實(shí)現(xiàn)畫筆變換
7.6 屬性
7.6.1 依賴項(xiàng)屬性和附加屬性
7.6.2 利用樣式資源控制控件的屬性
7.7 事件
7.7.1 WPF事件模型
7.7.2 事件路由策略
7.7.3 鼠標(biāo)事件
7.7.4 鍵盤事件
7.7.5 手寫筆和觸控事件
習(xí)題
第8章 WPF控件
8.1 控件模型和內(nèi)容模型
8.1.1 內(nèi)置的WPF控件
8.1.2 WPF控件模型
8.1.3 WPF內(nèi)容模型
8.1.4 WPF應(yīng)用程序中創(chuàng)建控件對(duì)象的方式
8.2 常用布局控件
8.2.1 WPF的布局分類
8.2.2 網(wǎng)格(Grid)
8.2.3 堆疊面板(StackPanel)
8.2.4 畫布(Canvas)
8.2.5 邊框(Border)
8.2.6 ?棵姘(DockPanel)
8.2.7 其他常用布局控件
8.3 常用基本控件
8.3.1 按鈕(Button、RepeatButton)
8.3.2 文本塊(TextBlock)和標(biāo)簽(Label)
8.3.3 文本框(TextBox、PasswordBox、RichTextBox)
8.3.4 單選按鈕(RadioButton)
8.3.5 復(fù)選框(CheckBox)
8.3.6 列表框(ListBox)和下拉框(ComboBox)
8.4 菜單、工具條和狀態(tài)條
8.4.1 菜單(Menu)和快捷菜單(ContextMenu)
8.4.2 工具條(ToolBar、ToolBarTray)和狀態(tài)條(StatusBar)
8.5 圖像和GIF動(dòng)畫
8.5.1 Image控件
8.5.2 利用WindowsFormsHost播放GIF動(dòng)畫
8.6 其他WPF控件
習(xí)題
第9章 資源與樣式控制
9.1 文件屬性與文件資源
9.1.1 WPF項(xiàng)目中的文件屬性
9.1.2 嵌入的資源和鏈接的資源
9.1.3 內(nèi)容文件和SplashScreen
9.2 XAML資源和樣式控制
9.2.1 XAML資源
9.2.2 Style元素
9.2.3 在Style元素中設(shè)置屬性和事件
9.2.4 樣式的級(jí)聯(lián)控制
9.2.5 使用C#代碼定義和引用樣式
9.3 在Style元素中使用模板和觸發(fā)器
9.3.1 模板
9.3.2 觸發(fā)器
9.4 主題(Themes)
9.4.1 系統(tǒng)主題
9.4.2 自定義主題
9.5 本地化處理
9.5.1 利用資源字典實(shí)現(xiàn)本地化處理
9.5.2 利用嵌入的資源實(shí)現(xiàn)本地化處理
習(xí)題
第10章 動(dòng)畫與多媒體
10.1 WPF動(dòng)畫基礎(chǔ)
10.1.1 WPF動(dòng)畫的分類
10.1.2 Storyboard和Timeline
10.2 基本動(dòng)畫(From/To/By)
10.2.1 基本動(dòng)畫類型
10.2.2 用本地動(dòng)畫實(shí)現(xiàn)基本動(dòng)畫
10.2.3 用Storyboard實(shí)現(xiàn)基本動(dòng)畫
10.2.4 用時(shí)鐘動(dòng)畫實(shí)現(xiàn)基本動(dòng)畫
10.3 關(guān)鍵幀動(dòng)畫
10.3.1 關(guān)鍵幀動(dòng)畫類型
10.3.2 利用Blend for VS2012制作關(guān)鍵幀動(dòng)畫
10.3.3 在關(guān)鍵幀動(dòng)畫中插入樣條動(dòng)畫
10.3.4 在關(guān)鍵幀動(dòng)畫中插入緩動(dòng)函數(shù)
10.4 路徑動(dòng)畫
10.4.1 使用PathGeometry繪制路徑
10.4.2 路徑動(dòng)畫類型
10.4.3 利用Blend for VS2012制作路徑動(dòng)畫
10.5 變換(Transform)
10.5.1 基本概念
10.5.2 對(duì)變換進(jìn)行動(dòng)畫處理
10.6 效果(Effect)
10.6.1 模糊效果(BlurEffect)
10.6.2 陰影效果(DropShadowEffect)
10.6.3 文本效果(TextEffect)
10.7 音頻和視頻
10.7.1 語(yǔ)音
10.7.2 音頻和視頻(MediaElement)
10.7.3 SoundPlayerAction類
習(xí)題
第11章 數(shù)據(jù)綁定與數(shù)據(jù)驗(yàn)證
11.1 數(shù)據(jù)綁定
11.1.1 數(shù)據(jù)綁定基本概念
11.1.2 簡(jiǎn)單數(shù)據(jù)綁定
11.1.3 數(shù)據(jù)模板化
11.1.4 通過(guò)數(shù)據(jù)模板和視圖綁定到集合
11.2 數(shù)據(jù)驗(yàn)證
11.2.1 數(shù)據(jù)驗(yàn)證的基本概念
11.2.2 利用驗(yàn)證規(guī)則和綁定模型實(shí)現(xiàn)驗(yàn)證
習(xí)題
第12章 數(shù)據(jù)庫(kù)與實(shí)體數(shù)據(jù)模型
12.1 創(chuàng)建數(shù)據(jù)庫(kù)和表
12.1.1 ADO.NET數(shù)據(jù)訪問(wèn)技術(shù)
12.1.2 SQL Server 2012簡(jiǎn)介
12.1.3 創(chuàng)建LocalDB數(shù)據(jù)庫(kù)
12.2 利用實(shí)體框架創(chuàng)建實(shí)體數(shù)據(jù)模型
12.2.1 實(shí)體框架基本概念
12.2.2 實(shí)體框架開(kāi)發(fā)模式
12.2.3 從數(shù)據(jù)庫(kù)創(chuàng)建實(shí)體數(shù)據(jù)模型
12.3 使用LINQ to Entities訪問(wèn)實(shí)體對(duì)象
12.3.1 創(chuàng)建實(shí)體框架上下文(DbContext)實(shí)例
12.3.2 加載相關(guān)對(duì)象
12.3.3 查詢數(shù)據(jù)
12.3.4 修改數(shù)據(jù)
12.3.5 添加或刪除數(shù)據(jù)
12.4 DataGrid控件
12.4.1 綁定各種類型的數(shù)據(jù)
12.4.2 標(biāo)題和行列控制
習(xí)題
第13章 二維圖形圖像處理
13.1 圖形圖像處理基礎(chǔ)
13.1.1 與二維三維圖形圖像處理相關(guān)的類
13.1.2 創(chuàng)建本章例子的主程序
13.2 圖形處理
13.2.1 二維幾何圖形和路徑標(biāo)記語(yǔ)法
13.2.2 基本圖形
13.2.3 復(fù)合圖形
13.2.4 將格式化文本轉(zhuǎn)換為圖形
13.3 圖像處理
13.3.1 圖像處理常用類
13.3.2 圖像的編碼和解碼
13.3.3 像素格式轉(zhuǎn)換(FormatConvertedBitmap)
13.3.4 旋轉(zhuǎn)剪切和縮放圖像
13.3.5 自動(dòng)播放和逐幀繪制GIF動(dòng)畫
13.3.6 其他基本的圖像處理技術(shù)
13.4 利用畫筆繪制圖形圖像
13.4.1 TileBrush類
13.4.2 圖像畫筆(ImageBrush)
13.4.3 繪制畫筆(DrawingBrush)
13.4.4 可視畫筆(VisualBrush)
習(xí)題
第14章 三維圖形和三維呈現(xiàn)
14.1 WPF三維設(shè)計(jì)基本知識(shí)
14.1.1 Viewport3D控件
14.1.2 照相機(jī)(Camera)
14.1.3 三維幾何模型(GeometryModel3D)
14.1.4 光照類型
14.1.5 材料(Meterial)
14.2 在窗口或頁(yè)面中呈現(xiàn)三維場(chǎng)景
14.2.1 利用相機(jī)變換制作3D場(chǎng)景觀察器
14.2.2 動(dòng)態(tài)顯示相機(jī)的屬性
14.2.3 三維網(wǎng)格幾何(MeshGeometry3D)
14.3 三維建模和自定義三維模型類
14.3.1 利用模型編輯器創(chuàng)建和編輯三維模型
14.3.2 創(chuàng)建自定義三維模型類
14.3.3 利用三維模型庫(kù)簡(jiǎn)化場(chǎng)景構(gòu)建
14.4 對(duì)模型進(jìn)行變換和動(dòng)畫處理
14.4.1 三維變換處理基礎(chǔ)
14.4.2 將三維變換封裝到模型庫(kù)中
14.4.3 對(duì)模型進(jìn)行動(dòng)畫處理
習(xí)題
附錄A 上機(jī)練習(xí)
附錄B 綜合實(shí)驗(yàn)