WPF應用開發項目教程
-
【作 者】陳鄭軍 劉振東
【I S B N 】978-7-5170-2867-3
【責任編輯】張玉玲
【適用讀者群】本專通用
【出版時間】2015-03-10
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】220
【千字數】350
【印 張】13.75
【定 價】¥28
【叢 書】高等職業教育“十二五”規劃教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書以項目化任務驅動式組織教學內容,循序漸進地介紹WPF的開發環境、XAML基礎、Application類、窗體、布局控件、常用控件、路由事件、系統命令庫、自定義命令、Binding、資源、樣式、模板、觸發器等,使讀者不僅能夠學習WPF的各種開發知識,而且能夠培養分析問題、解決問題的能力,以更快的速度和更好的效果去掌握WPF開發技術。
全書共6個項目,均是圍繞圖書管理系統主題展開,每個項目都以一個圖書管理典型應用設計,再以多個子任務完成,每個子任務都具有較高的應用價值和代表性。教學內容的設計符合學習者面對問題時的情況,依照任務描述、知識準備、任務分析、任務實施和任務小結5個環節進行,既能科學地解決問題又有很強的鍛煉作用。
全書以圖書管理系統貫穿全程,將各個知識環節融入案例中,整體知識結構清晰、語言簡潔,易于學習和提高,非常適合初學WPF技術的在校大學生和開發愛好者學習參考。
本書建設有精品網絡課程(網址:http://moodle.cqdd.cq.cn/course/view.php?id=70,賬號:student0,口令:student0),資源詳實,對學習者免費開放;另外提供全書任務的源代碼、電子教案、授課計劃書等教輔資料,請到中國水利水電出版社網站和萬水書苑上免費下載,網址為:http://www.waterpub.com.cn/softdown/和http://www.dgboyong.cn。
改進了傳統的教學組織模式,通過一個個項目來進行教學,每個項目都遵循項目需求、任務分解、知識準備、任務分析、任務實施和任務小結的有序組織結構,讓學生在學習相關理論知識之前就能夠了解到這些知識在實際項目開發中的作用,調動其學習的積極性和主動性,培養自主學習的能力。
項目的分解分布組織教學為學生搭建了知識和應用之間的橋梁,每個項目都在進行“問題是什么、問題需要什么知識、問題如何解決”的循序漸進學習和思考,能夠培養學生分析問題、解決問題的能力。
每個項目后的專項技能訓練可幫助學生鞏固所學、拓展知識和技能。
從最早的到廣泛應用的Windows 95再到如今的Windows 8.1操作系統,微軟Windows可視化開發技術已經出現將近20年。其間出現了很多優秀的開發工具,但它們使用的都是在過去十多年中基本沒有變化的Windows技術。Windows窗體依靠Windows API建立標準化的用戶界面元素可視化的外觀,如按鈕、文本框和復選框等。一直以來這些要素在本質上都是不可定制的。軟件開發人員如果希望創建一個外觀酷炫的界面,則必須自定義控件,使用低級的繪圖模型來繪制控件各個方面的細節,極端情況下甚至必須手工繪制每一個細節。不僅如此,程序員還要對API非常熟悉才能完成這項艱巨的任務。
從.NET Framework 3.0開始,基于DirectX功能強大的基礎結構的WPF技術閃亮登場,它通過引入一個使用完全不同技術的新模型改變了所有這一切。WPF將以前Windows開發領域中的精華和當今的創新技術融為一體,來構建現代的富圖形用戶界面。使用這些特性,WPF可以重新設置幾乎所有控件的樣式,不僅操作簡便,而且通常還不需要編寫任何代碼。
為了幫助更多的軟件開發人員學習WPF技術,編者精心編寫了本書。本書在內容編排和目錄組織上都十分講究,力爭讓讀者能夠更快更好地掌握WPF開發技術。本書主要依托微軟的Visual Studio 2012集成開發環境,結合了多位一線教師、行業專家和企業技術人員在教學和研發中積累的經驗,將WPF技術常用知識融入到6個項目中,以學習者的角度詳細介紹了WPF技術的相關知識。
全書以圖書管理系統為總綱,包含6個項目,分別是:項目一 WPF基礎—“Hello World!”程序制作;項目二 WPF布局設計—圖書管理系統UI設計;項目三 WPF的路由事件—登錄和注冊程序實現;項目四 WPF命令—窗體清除功能的實現;項目五 WPF綁定—注冊信息入庫;項目六 WPF資源、樣式和模板—項目美化。
本書改進了傳統的教學組織模式,通過一個個項目來進行教學,每個項目都遵循項目需求、任務分解、知識準備、任務分析、任務實施和任務小結的有序組織結構。讓學習者在學習相關理論知識之前就能夠了解到這些知識在實際項目開發中的作用,調動其學習的積極性和主動性,培養自主學習的能力。項目的分解分布組織教學也為學習者搭建了知識和應用之間的橋梁,每個項目都在進行“問題是什么、問題需要什么知識、問題如何解決”的循序漸進學習和思考,能夠培養學生分析問題、解決問題的能力,對于提高學習者的動手能力大有裨益。同時每個項目后的專項技能訓練,可以幫助學習者鞏固所學、拓展知識和技能。
本書緊密結合教學與研發,更結合學習者的學習習慣和認知規律,所設計的項目綜合了WPF開發技術的基礎知識,同時強化了學生動手能力的培養,是一本非常適合于WPF開發技術學習的入門教材。
本書由陳鄭軍、劉振東任主編,胡方霞、周樹語、伍技祥、黃柯祥、張濤任副主編。其中陳鄭軍編寫項目一至項目三,并負責全書的統稿工作,劉振東編寫項目四至項目六,胡方霞教授負責教材審稿工作,周樹語和伍技祥兩位副教授負責教材課程大綱編寫和電子教案的制作,德克特公司的周繼松、黃柯翔和張濤負責圖書管理系統項目的軟件設計、編碼,以及其他企業案例的提供工作。
在本書的編寫過程中作者得到了重慶工商職業學院各級領導的大力支持和幫助,在此表示衷心的感謝。同時,在教材編寫過程中作者參考了大量相關資料,包括教材、科研文獻、博客文章等,吸取了許多前輩、專家和同仁的寶貴經驗,在此一并致謝。
由于作者水平所限,書中疏漏甚至錯誤之處在所難免,懇請廣大讀者批評指正。
編 者
2014年12月
程序制作 1
【項目描述】 1
【學習目標】 1
【能力目標】 1
任務1.1 搭建WPF開發環境 1
1.1.1 WPF是什么 2
1.1.2 WPF的特點 2
1.1.3 WPF的組成結構 3
1.1.4 WPF和Silverlight的關系 4
任務1.2 設計簡單XAML程序 9
1.2.1 XAML是什么 9
1.2.2 XAML語法基礎 10
1.2.3 WPF中的樹 17
【項目總結】 22
【項目實訓】 22
項目二 WPF布局設計—圖書管理系統
UI設計 23
【項目描述】 23
【學習目標】 23
【能力目標】 23
任務2.1 設計圖書管理系統登錄界面 23
2.1.1 認識Application 24
2.1.2 認識窗體 26
2.1.3 主窗體的啟動模式 30
2.1.4 不規則窗體 31
任務2.2 設計圖書管理系統用戶注冊界面 37
2.2.1 理解WPF布局 37
2.2.2 WPF布局原則 38
2.2.3 布局過程 39
2.2.4 布局元素 39
2.2.5 Grid面板 40
2.2.6 StackPanel面板 44
2.2.7 Canvas面板 45
2.2.8 DockPanel面板 46
2.2.9 WrapPanel面板 47
任務2.3 設計圖書管理系統主界面 50
2.3.1 什么是控件 51
2.3.2 控件的類型 51
2.3.3 WPF菜單控件(Menu) 56
2.3.4 WPF工具欄和狀態欄控件 60
2.3.5 WPF范圍控件:滾動條、進展條、
滑動條 62
2.3.6 用戶自定義控件 63
【項目總結】 69
【項目實訓】 69
項目三 WPF的路由事件—登錄和注冊
程序實現 70
【項目描述】 70
【學習目標】 70
【能力目標】 70
任務3.1 完成登錄窗體事件處理 70
3.1.1 什么是路由事件 70
3.1.2 為路由事件添加和實現事件處理程序 74
任務3.2 完成注冊窗體事件處理 87
3.2.1 WPF事件簡介 87
3.2.2 鍵盤輸入事件 88
3.2.3 鼠標輸入 91
【項目總結】 98
【項目實訓】 98
項目四 WPF命令—窗體清除功能的實現 99
【項目描述】 99
【學習目標】 99
【能力目標】 99
任務4.1 創建使用簡單命令的程序 99
4.1.1 命令是什么 100
4.1.2 WPF的命令庫 100
4.1.3 命令綁定 103
任務4.2 創建使用復雜命令的程序 105
4.2.1 命令系統的基本元素 106
4.2.2 命令系統的基本元素之間的關系 106
任務4.3 創建使用自定義命令的程序 111
4.3.1 自定義命令 111
4.3.2 自定義命令的使用 112
任務4.4 使用命令實現清除功能 114
4.4.1 命令參數 115
4.4.2 命令參數的使用 115
【項目總結】 121
【項目實訓】 122
項目五 WPF綁定—注冊信息入庫 123
【項目描述】 123
【學習目標】 123
【能力目標】 123
任務5.1 創建一個使用Binding的簡單程序 123
5.1.1 數據綁定概述 124
5.1.2 Binding基礎 124
5.1.3 最簡單的數據綁定 125
5.1.4 控制Binding的方向及數據更新 127
任務5.2 創建顯示自定義顏色的程序 132
5.2.1 Binding的路徑(Path) 133
5.2.2 用Source綁定到CLR對象 135
5.2.3 使用Binding的RelativeSource 140
任務5.3 注冊用戶的信息查詢 145
5.3.1 使用DataContext作為數據源 145
5.3.2 使用集合對象作為列表控件
的ItemsSource 148
任務5.4 注冊信息入庫 164
5.4.1 數據驗證概述 165
5.4.2 數據驗證規則 166
【項目總結】 177
【項目實訓】 177
項目六 WPF資源、樣式和模板—項目美化 179
【項目描述】 179
【學習目標】 179
【能力目標】 179
任務6.1 美化讀者信息修改界面的
TextBlock控件 179
6.1.1 資源 179
6.1.2 資源的定義及XAML中的引用 182
6.1.3 XAML解析資源的順序 184
6.1.4 靜態資源(StaticResource)和動態
資源(DynamicResource) 186
任務6.2 美化讀者添加界面的TextBox
控件 191
6.2.1 Style元素 191
6.2.2 模板 192
任務6.3 美化讀者借書界面的Button控件 196
6.3.1 觸發器概述 196
6.3.2 觸發器類型 197
任務6.4 美化讀者管理界面的
DataGrid控件 206
6.4.1 DataGrid控件 206
6.4.2 自定義DataGrid控件的模板 207
【項目總結】 212
【項目實訓】 213
參考文獻 214
- 系統集成項目管理工程師考前沖刺100題(第三版) [劉毅 朱小平 編著]
- 系統集成項目管理工程師(適用第3版大綱)一站通關 [指尖瘋 編著]
- 高性能架構——多級網關與多級緩存實踐 [李晨翔(@風間影月) 著]
- 皓月繁星:24位大咖的心理課堂 [主編 林贊歌]
- 系統集成項目管理工程師案例分析一本通(第二版) [王樹文 編著]
- 信息安全工程師考前沖刺100題(第二版) [施 游 朱小平 編著]
- 信息系統項目管理師考前沖刺100題(配套第四版大綱) [劉毅 朱小平 編著]
- SQL Server 2019數據庫實戰教程 [主編 岳付強 曾陳萍 唐承佳]
- 大學生創新創業實踐—機械類 [主編 林卿 史洪瑋 沈洋]
- 程序思維與C語言實現 [張祎 王俊海 呂波]
- 國際交流英語 [金忍冬]
- 網絡組建與互聯 [馬峰柏 李佼輝]
- 畫屏—2023年中央媒體國家水網建設新聞報道匯編 [水利部宣傳教育中心 編]
- 大學計算機基礎教程(Windows 10+WPS Office 2019) [吳志攀 劉利]
- Python程序設計及實踐教程 [肖朝暉]
- MySQL數據庫技術項目化教程——基于OBE理念 [主編 劉崇巍 龐金龍]
- 新時代大學生入學教育 [主編 程靜 周毅 周世兵]
- 計算機信息素養基礎(第二版) [主編 陳艷]
- 計算機基礎與應用(第二版) [主編 秦凱]
- 計算機網絡技術實訓教程(第二版) [主編 高良誠]
- 高職英語語法教程 [主編 汪莉 高小兵 張學儀]
- 綠色生態環保主題口譯教程 [主編 江雯 汪學華 李茂彪]
- 大學體育數字化實用教程 [主編 周秀蓉 葉鈺海]
- 大學計算機基礎教程(Windows 10+WPS Office 2019) [吳志攀 劉利]
- 應用數學 [吳小寧]
- 新時代勞動教育與實踐 [鞠向超]
- 信息系統項目管理師真題及沖刺卷精析(適用機考) [主編 薛大龍]
- 系統集成項目管理工程師真題及沖刺卷精析(適用機考) [主編 薛大龍 副主編 唐徽 劉]
- Linux服務器構建與運維管理從基礎到實戰(基于openEuler) [阮曉龍 馮順磊 杜宇飛 劉明哲]
- 網絡安全原理與應用(第三版) [戚文靜 劉學 李國文 王震]