[ 收藏 ] [ 简体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

  •  管理

     一般管理学
     市场/营销
     会计
     金融/投资
     经管音像
     电子商务
     创业企业与企业家
     生产与运作管理
     商务沟通
     战略管理
     商业史传
     MBA
     管理信息系统
     工具书
     外文原版/影印版
     管理类职称考试
     WTO
     英文原版书-管理
  •  投资理财

     证券/股票
     投资指南
     理财技巧
     女性理财
     期货
     基金
     黄金投资
     外汇
     彩票
     保险
     购房置业
     纳税
     英文原版书-投资理财
  •  经济

     经济学理论
     经济通俗读物
     中国经济
     国际经济
     各部门经济
     经济史
     财政税收
     区域经济
     统计 审计
     贸易政策
     保险
     经济数学
     各流派经济学说
     经济法
     工具书
     通货膨胀
     财税外贸保险类考试
     英文原版书-经济
  •  社会科学

     语言文字
     社会学
     文化人类学/人口学
     新闻传播出版
     社会科学总论
     图书馆学/档案学
     经典名家作品集
     教育
     英文原版书-社会科学
  •  哲学

     哲学知识读物
     中国古代哲学
     世界哲学
     哲学与人生
     周易
     哲学理论
     伦理学
     哲学史
     美学
     中国近现代哲学
     逻辑学
     儒家
     道家
     思维科学
     马克思主义哲学
     经典作品及研究
     科学哲学
     教育哲学
     语言哲学
     比较哲学
  •  宗教

  •  心理学

  •  古籍

  •  文化

  •  历史

     历史普及读物
     中国史
     世界史
     文物考古
     史家名著
     历史地理
     史料典籍
     历史随笔
     逸闻野史
     地方史志
     史学理论
     民族史
     专业史
     英文原版书-历史
     口述史
  •  传记

  •  文学

  •  艺术

     摄影
     绘画
     小人书/连环画
     书法/篆刻
     艺术设计
     影视/媒体艺术
     音乐
     艺术理论
     收藏/鉴赏
     建筑艺术
     工艺美术
     世界各国艺术概况
     民间艺术
     雕塑
     戏剧艺术/舞台艺术
     艺术舞蹈
     艺术类考试
     人体艺术
     英文原版书-艺术
  •  青春文学

  •  文学

     中国现当代随笔
     文集
     中国古诗词
     外国随笔
     文学理论
     纪实文学
     文学评论与鉴赏
     中国现当代诗歌
     外国诗歌
     名家作品
     民间文学
     戏剧
     中国古代随笔
     文学类考试
     英文原版书-文学
  •  法律

     小说
     世界名著
     作品集
     中国古典小说
     四大名著
     中国当代小说
     外国小说
     科幻小说
     侦探/悬疑/推理
     情感
     魔幻小说
     社会
     武侠
     惊悚/恐怖
     历史
     影视小说
     官场小说
     职场小说
     中国近现代小说
     财经
     军事
  •  童书

  •  成功/励志

  •  政治

  •  军事

  •  科普读物

  •  计算机/网络

     程序设计
     移动开发
     人工智能
     办公软件
     数据库
     操作系统/系统开发
     网络与数据通信
     CAD CAM CAE
     计算机理论
     行业软件及应用
     项目管理 IT人文
     计算机考试认证
     图形处理 图形图像多媒体
     信息安全
     硬件
     项目管理IT人文
     网络与数据通信
     软件工程
     家庭与办公室用书
  •  建筑

  •  医学

     中医
     内科学
     其他临床医学
     外科学
     药学
     医技学
     妇产科学
     临床医学理论
     护理学
     基础医学
     预防医学/卫生学
     儿科学
     医学/药学考试
     医院管理
     其他医学读物
     医学工具书
  •  自然科学

     数学
     生物科学
     物理学
     天文学
     地球科学
     力学
     科技史
     化学
     总论
     自然科学类考试
     英文原版书-自然科学
  •  工业技术

     环境科学
     电子通信
     机械/仪表工业
     汽车与交通运输
     电工技术
     轻工业/手工业
     化学工业
     能源与动力工程
     航空/航天
     水利工程
     金属学与金属工艺
     一般工业技术
     原子能技术
     安全科学
     冶金工业
     矿业工程
     工具书/标准
     石油/天然气工业
     原版书
     武器工业
     英文原版书-工业技
  •  农业/林业

  •  外语

  •  考试

  •  教材

  •  工具书

  •  中小学用书

  •  中小学教科书

  •  动漫/幽默

  •  烹饪/美食

  •  时尚/美妆

  •  旅游/地图

  •  家庭/家居

  •  亲子/家教

  •  两性关系

  •  育儿/早教

     保健/养生
     体育/运动
     手工/DIY
     休闲/爱好
     英文原版书
     港台图书
     研究生
     工学
     公共课
     经济管理
     理学
     农学
     文法类
     医学
  • WPF編程基礎
    該商品所屬分類:研究生 -> 工學
    【市場價】
    430-624
    【優惠價】
    269-390
    【作者】 劉晉鋼、熊風光、況立群 
    【所屬類別】 圖書  教材  研究生/本科/專科教材  工學 
    【出版社】清華大學出版社 
    【ISBN】9787302482819
    【折扣說明】一次購物滿999元台幣免運費+贈品
    一次購物滿2000元台幣95折+免運費+贈品
    一次購物滿3000元台幣92折+免運費+贈品
    一次購物滿4000元台幣88折+免運費+贈品
    【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
    版本正版全新電子版PDF檔
    您已选择: 正版全新
    溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
    *. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
    *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
    *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
    內容介紹



    開本:16開
    紙張:膠版紙
    包裝:平裝-膠訂

    是否套裝:否
    國際標準書號ISBN:9787302482819
    作者:劉晉鋼、熊風光、況立群

    出版社:清華大學出版社
    出版時間:2018年03月 

        
        
    "
    編輯推薦
    本書通過大量案例展示WPF的設計思想。案例組織采用分層遞進疊加的方式,程序從小變大、由易到難,幫助讀者迅速掌握寫程序的思想路徑。 
    內容簡介
    本書從WPF技術的設計原則出發,介紹WPF中XAML的語法結構、布局方式、常用控件、數據驅動UI的理念、路由事件、圖形基礎、動畫與媒體、動作原則、資源與樣式及MVVM設計模式,並通過大量的案例向讀者展示WPF的設計思想。案例組織采用分層遞進疊加方式,讓程序從小變大,由易到難,能夠使讀者迅速地熟悉編寫程序的思想路徑,體會到編寫程序的樂趣。每章配有習題,以啟發讀者深入地學習WPF技術。
    本書既可作為高等學校計算機專業UI設計、軟件開發、人機交互技術等課程的教材,也可作為計算機從業人員的參考書。
    目錄

    目錄




    第1章引言

    1.1全新的圖形用戶繫統

    1.2XAML編程模型

    1.2.1HTML

     


    目錄


     


     


     


     


    第1章引言


     


    1.1全新的圖形用戶繫統


     


    1.2XAML編程模型


     


    1.2.1HTML


     


    1.2.2XAML


     


    1.3WPF特性


     


    1.3.1布局與控件


     


    1.3.2數據集成及處理能力


     


    1.4WPF體繫結構


     


    1.4.1WPF運行機制


     


    1.4.2WPF類層次結構


     


    1.4.3WPF的可視化樹與邏輯樹


     


    1.5WPF與UWP


     


    1.6小結


     


    習題與實驗1


     


    第2章XAML


     


    2.1XAML文檔框架


     


    2.1.1XAML文檔結構


     


    2.1.2基礎語法


     


    2.2XAML中的屬性


     


    2.2.1簡單屬性


     


    2.2.2復雜屬性


     


    2.2.3附加屬性


     


    2.2.4處理特殊字符與空白


     


    2.3XAML名稱空間


     


    2.3.1名稱空間的作用


     


    2.3.2默認名稱空間


     


    2.3.3名稱空間中的標記擴展


     


    2.4類型轉換器


     


    2.5導入程序集


     


    2.6小結


     


    習題與實驗2


     


    第3章布局


     


    3.1布局原則


     


    3.1.1合成布局模型


     


    3.1.2布局機制


     


    3.1.3布局通用屬性


     


    3.2布局面板


     


    3.2.1Canvas


     


    3.2.2DockPanel


     


    3.2.3StackPanel


     


    3.2.4WrapPanel


     


    3.2.5UniformGrid


     


    3.3Grid


     


    3.3.1從結構中分離布局


     


    3.3.2尺寸模型


     


    3.3.3共享尺寸組


     


    3.3.4跨越行和列


     


    3.3.5GridSplitter


     


    3.4小結


     


    習題與實驗3


     


    第4章控件


     


    4.1WPF控件新理念


     


    4.1.1內容模型


     


    4.1.2模板


     


    4.2菜單、工具欄和狀態欄


     


    4.2.1Menu


     


    4.2.2ToolBar


     


    4.2.3StatusBar


     


    4.3容器控件


     


    4.3.1Expander


     


    4.3.2GroupBox


     


    4.3.3TabControl


     


    4.4範圍控件


     


    4.4.1Slider


     


    4.4.2ScrollBar


     


    4.4.3ProgressBar


     


    4.5文本編輯器控件


     


    4.5.1文本模型


     


    4.5.2PasswordBox


     


    4.5.3TextBox與RichTextBox


     


    4.5.4InkCanvas


     


    4.6列表控件


     


    4.6.1ListBox和ComboBox


     


    4.6.2ListView


     


    4.6.3TreeView


     


    4.7構建控件


     


    4.7.1ToolTip


     


    4.7.2Thumb


     


    4.7.3Border


     


    4.7.4Popup


     


    4.7.5ScrollViewer


     


    4.7.6Viewbox


     


    4.8日期控件


     


    4.8.1Calendar


     


    4.8.2DatePicker


     


    4.9按鈕


     


    4.10小結


     


    習題與實驗4


     


    第5章數據


     


    5.1數據驅動模型


     


    5.1.1數據原則


     


    5.1.2資源


     


    5.2數據綁定原理


     


    5.2.1數據綁定機制


     


    5.2.2數據源與路徑


     


    5.2.3值轉換機制


     


    5.2.4數據綁定模型


     


    5.3數據綁定用法


     


    5.3.1控件間的綁定


     


    5.3.2控件綁定資源文件值


     


    5.3.3屬性變更通知接口


     


    5.3.4綁定到列表框


     


    5.4小結


     


    習題與實驗5


     


    第6章路由事件


     


    6.1消息機制


     


    6.1.1消息的運行機制


     


    6.1.2事件模型


     


    6.2路由事件原理


     


    6.2.1路由事件機制


     


    6.2.2RoutedEventArgs類


     


    6.2.3路由策略


     


    6.3自定義路由事件


     


    6.4附加事件


     


    6.5小結


     


    習題與實驗6


     


    第7章圖形基礎


     


    7.1WPF圖形原則


     


    7.1.1幾何圖形與筆刷


     


    7.1.2繪制圖畫


     


    7.22D圖形


     


    7.2.1形狀


     


    7.2.2圖像


     


    7.2.3WPF圖像特效


     


    7.33D圖形


     


    7.3.1WPF坐標繫


     


    7.3.2模型


     


    7.3.3材質


     


    7.3.4光源與照相機


     


    7.3.5變換


     


    7.4小結


     


    習題與實驗7


     


    第8章動畫與媒體


     


    8.1動畫基礎


     


    8.1.1動畫的概念


     


    8.1.2動畫的原理


     


    8.1.3傳統動畫與WPF動畫


     


    8.2動畫類型


     


    8.2.1線性插值動畫


     


    8.2.2關鍵幀動畫


     


    8.2.3路徑動畫


     


    8.3集成動畫


     


    8.3.1與控件模板集成


     


    8.3.2與文本類型集成


     


    8.4媒體


     


    8.4.1音頻


     


    8.4.2視頻


     


    8.5小結


     


    習題與實驗8


     


    第9章動作


     


    9.1動作原則


     


    9.素合成


     


    9.1.2松散耦合


     


    9.1.3聲明式動作


     


    9.2命令繫統


     


    9.2素之間的關繫


     


    9.2.2ICommand接口


     


    9.2.3RoutedCommand類


     


    9.2.4RoutedUICommand類


     


    9.2.5WPF命令庫


     


    9.2.6命令與數據綁定


     


    9.3觸發器


     


    9.3.1數據觸發器


     


    9.3.2屬性觸發器


     


    9.3.3多條件觸發器


     


    9.4小結


     


    習題與實驗9


     


    第10章資源


     


    10.1資源概述


     


    10.1.1資源的定義


     


    10.1.2資源可用範圍


     


    10.2資源類型


     


    10.2.1二進制資源


     


    10.2.2邏輯資源


     


    10.3資源引用方式


     


    10.3.1靜態資源引用


     


    10.3.2動態資源引用


     


    10.4資源字典


     


    10.4.1創建資源字典


     


    10.4.2使用資源字典


     


    10.5小結


     


    習題與實驗10


     


    第11章樣式


     


    11.1樣式的構成


     


    11.1.1設置器


     


    11.1.2樣式觸發器


     


    11.1.3樣式容器


     


    11.2使用樣式的方法


     


    11.2.1內聯樣式


     


    11.2.2已命名樣式


     


    11.素類型樣式


     


    11.2.4編程控制樣式


     


    11.3模板


     


    11.3.1定制模板


     


    11.3.2樣式與控件模板


     


    11.3.3樣式與數據模板


     


    11.3.4列表與項目模板


     


    11.3.5主題與皮膚


     


    11.4小結


     


    習題與實驗11


     


    第12章MVVM設計模式


     


    12.1軟件設計模式


     


    12.1.1設計模式的概念


     


    12.1.2設計模式的原則


     


    12.2MVVM設計模式概述


     


    12.2.1MVVM的由來


     


    12.2.2MVVM框架


     


    12.2.3MVVM的優點


     


    12.3基於MVVM的計算器設計


     


    12.3.1Model


     


    12.3.2ViewModel


     


    12.3.3View


     


    12.4基於MVVM設計思想


     


    12.5小結


     


    習題與實驗12


     


    參考文獻


     

    前言





    前言

     


     


     


     


     


    前言


     


     


    WPF(Windows Presentation Foundation)是專門用來編寫程序表示層的技術和工具。它是微軟新一代圖形展示繫統,是用戶界面技術進步的重要標志。使用WPF編寫的程序比之前的WinForm程序更加簡潔清晰。WPF技術適用於微軟平臺下的桌面繫統、瀏覽器、Windows Phone的開發。因為微軟程序的開發理念都一樣,僅在類庫方面有一些差別。


     


    本書詳細介紹WPF中XAML的語法結構、布局方式、常用控件、數據驅動UI的理念、路由事件、圖形基礎、動畫與媒體、動作原則、資源與樣式及MVVM設計模式,並通過大量的案例向讀者展示WPF的設計思想。案例組織采用分層遞進疊加方式,讓程序從小變大,由易到難,能夠使讀者迅速地熟悉編寫程序的思想路徑,體會到編寫程序的樂趣。全書共12章,前4章是有關WPF基礎的編程內容和界面UI設計,從第5章開始是WPF的高級進階。各章內容概述如下。


     


    第1章介紹WPF的編程機制。采用逐層深入的Button案例,講解WPF平臺特性。通過對WPF的運行機制及類層次結構講解,從而認識WPF的體繫結構。


     


    第2章介紹XAML可擴展的應用程序聲明式語言的樹形結構、復雜屬性、附加屬性、xmlns指令和名稱空間中的標記擴展等。


     


    第3章詳細介紹WPF布局原則及各布局面板的適用場合。重點說明Grid從結構中分離布局、尺寸模型、共享尺寸組、跨越行列等特征,並演示了Grid的多種用法。


     


    第4章介紹WPF控件內容模型和模板的新概念。重素合成、富內容和簡單的編程模型的控件原則。在此基礎上,學習WPF的內置控件。


     


    第5章介紹數據驅動模型、數據綁定原理及數據綁定的用法。


    第6章從Windows操作繫統的消息機制出發,介紹事件模型。在WPF中引入路由事件機制,可采用冒泡、隧道、直接3種策略。


     


    第7章從常用的幾素出發,介紹繪制圖畫、2D形狀及屬性,讓讀者進一步認識WPF 3D三維空間坐標繫、模型、材質、光源、照相機和變換。


     


    第8章介紹動畫工作原理。WPF動畫根據計算機的性能和當前進程的繁忙程度,盡可能地增大幀率,比傳統動畫流暢,實現方式簡捷。同時還介紹WPF中動畫的常用類型、集成方式和對音頻與視頻文件的播放方式。


     


    第9章介紹動作使用原則、命令繫統及觸發器使用方式。


    第10章介紹資源的定義、資源類型、適用範圍、資源的靜態與動態引用方式。特別強調資源字典要遵循“先創建後使用”的規則。


     


    第11章重點介紹樣式的構成、如何使用樣式及模板,並演示WPF實現換膚的操作步驟。


     


    第12章介紹軟件設計模式的起源、概念和原則。對比MVC、MVP和MVVM 3種設計模式的通信方式的差別,重點講解MVVM設計模式的框架、其三大組件內容結構,用基於MVVM模式的計算器案例證明WPF數據驅動UI的設計思想。


    本書由劉晉鋼主編,其中第1、4、12章由劉晉鋼編寫,第2、3章由熊風光編寫,第6、7章由況立群編寫,第8、9章由劉晉霞編寫,第10、11章由張麟華編寫,第5章由李麗編寫。


    本書既可作為高等學校計算機專業學生用書,也可作為計算機從業人員的參考書。作為教材,本書既適用於計算機專業UI設計、軟件開發、人機交互技術等課程,也可供職業技術學院計算機專業學生使用。通過本書的學習,讀者可以掌握WPF的核心技術,提升程序設計能力,為以後的工作和研究打下堅實的基礎。


     


    讀者可在清華大學出版社網站(www.tup.com.cn)免費下載本書所有案例的源代碼、與本書配套的電子課件以及習題參考答案。使用本書時,遇到資源下載問題,請聯繫責任編輯fuhy@tup.tsinghua.edu.cn或聯繫本書作者84161924
    @qq.com。


     


    在此,特別感謝劉子民對本書提供的技術支持和幫助,也感謝本書的責任編輯付弘宇對本書所做的審核工作。由於編者的水平有限,書中難免存在不足之處,懇請廣大讀者批評指正。


    教學建議


     


    根據突出應用的原則,從應用層次要求角度考慮,可把“WPF編程基礎”課程的教學內容分為基礎學習內容、高級進階內容和提升應用研發能力三部分。


     


    基礎學習:
    本書的前4章內容是有關WPF基礎的編程內容和界面UI設計。詳細介紹WPF中XAML的語法結構、布局方式和常用控件,涵蓋WPF的新特性、體繫結構、XAML基礎語法知識、XAML文檔的樹形結構和常用屬性,以及WPF布局原則及布局面板、WPF控件模型、模板及常用控件。學完前4章,讀者可以做出賞心悅目的用戶界面。


     


    高級進階:
    本書的第5章到第9章是WPF的高級進階。詳細介紹數據驅動UI的理念、圖形基礎、動畫與媒體和動作原則。這部分內容涉及WPF的核心技術,將事件驅動模型提升到數據驅動UI的理念上來,讓UI與業務邏輯真正地分離,並使前臺的設計師和後臺的程序員各司其職。


     


    提升應用:
    本書的第10章到第12章是提升學生應用能力部分。詳細介紹資源的類型、引用方式、資源字典、樣式的構成、使用樣式的方法、模板及MVVM設計模式。目前學生開發的不少項目多半都廢棄,究其原因主要是,資源分配不合理,樣式不美觀,沒有采用好的設計模式。這部分內容針對上述問題編寫,以提高學生的應用研發能力。


     


    本書用於教學的建議如表1所示。


     


     


     


    表1教學建議


     


     


     


    課程名


     


    (授課對像)WPF編程基礎(授課對像可以是計算機科學與技術、軟件工程等專業理工類四年制本科)48學時。注:
    三年制專科可參考此計劃適當修改(例如,可延長到64學時,難度適當降低)


     


    教學目的和要求掌握WPF核心技術、體繫結構、數據驅動UI的設計思想及MVVM設計模式,為提升程序開發能力奠定基礎


     


    續表


     


     


    必要的先修課程數據結構、操作繫統和面向對像程序設計語言(如C#)


     


    後續可開設實踐課程WPF項目實訓、基於Kinect的體感設計及手勢識別項目研發


     


    章次(學時)要求學生了解內容要求學生掌握內容實踐操作項目


     


     


    第1章引言(2)WPF的地位、體繫結構及應用前景WPF的新特性,布局與控件中涉及的容器控件的簡單用法數據集成處理能力章節中的Button導出的案例


     


    第2章XAML(2)XAML與HTML的異同點、XAML文檔的樹形結構XAML的名稱空間及屬性、類型轉換器的用法仿類型轉換器中案例,重做一個將字符串轉換成對像實例


     


    第3章布局(4)合成布局模型、布局機制、布局常用屬性布局面板的用法,布局嵌套生活中常見的布局應用(聊天室、Web等)


     


    第4章控件素合成、富內容和簡單的編程模型的控件原則WPF控件的基本用法、構建控件的思想、用戶自定義控件圖標設計、登錄用戶頁面、遊戲初始化頁面、桌面、主題頁面等


     


    第5章數據(6)數據模型的發展過程及微軟曾用過的數據模型數據綁定機制、值轉換機制、數據綁定模型、數據綁定用法INotifyPropertyChanged接口調用、數據綁定列表框


     


    第6章路由事件(6)消息概念、消息循環、Windows編程原理、附加事件路由事件工作機制、RoutedEventArgs類、路由策略實現自定義路由事件,分別采用隧道、冒泡和直接3種策略


     


    第7章圖形基礎(4)常用幾何圖形、在WPF 3D中的基本概念,包括WPF的坐標繫、各種光源和照相機的工作原理WPF圖像特效、繪制圖畫、控件與形狀組合、常用變換使用MeshGeometry3D定義模型,創建三維物體


     


    第8章動畫與媒體


    (2)動畫的概念、原理,傳統動畫與WPF動畫異同點線性插值動畫、關鍵幀動畫、路徑動畫,動畫集成設計簡單的動畫


     


    第9章動作(6)動作原則、命令繫素間的關繫、WPF命令庫使用各種觸發器、命令與數據綁定實現Windows記事本功能


     


    第10章資源(4)資源的定義、資源的類型、資源的可用範圍、使用資源的意義資源的靜態引用與動態引用方式、創建和使用資源字典使用資源字典


    第11章樣式(4)樣式的作用定制模板、使用樣式的方法設置主題、鎖屏、更換壁紙(皮膚)


    第12章MVVM設計模式(4)軟件設計模式的概念、原則、由來,MVC、MVP和MVVM發展過程MVVM設計模式的框架及其三大組件內容結構及該模式的優點完成基於MVVM的簡單計算器,並為該計算器的按鈕設計統一風格的樣式


     


     


    編者


    2018年1月


     


     


     


     


     


     


     


     

    在線試讀

    WPF布局是通過面板(Panel)素進行全面規劃和安排。簡單地說,就是把一些控件有條理地擺放在界面上合適的位置。在應用程序界面設計中,素布局至關重要,它可以方便用戶操作,並用清晰的頁面邏輯呈現用戶信息。如果內置布局控件不能滿足需要,用戶還可以創建自定義素。3.1布 局 原 則
    WinForm的布局是采用基於坐標的方式,當窗口內容發生變化時,裡面的控件不會隨之動態調整,用戶體驗不夠好。而WPF采用了基於流的布局方式,像Web開發模式。流式布局特點是: 素總是默認地自動向左上角靠近,在設計時,通素相對位置的方式使其達到預計的效素的位置依賴素的位置和尺寸。
    3.1.1合成布局模型
    WPF的合成布局模型是用來滿足廣泛的應用場景布局,允許某種布局控件被嵌套在其他布局控件中。合成布局模型通過布局契約來實現子控件和父布局控件間的通信問題。布局契約包括兩種設計思想,即根據內容調整尺寸和兩段布局。
    1. 根據內容調整尺寸根據內容調整尺寸,即每個控件都根據內容來確定控件大小,這個設計思想應用於UI中的所有控件。例如,窗口能夠調整大小來適應它們內部的控件,文本框控件能調整尺寸來適應它內部的文本。當素會被詢問其期望的尺寸大小,以確保根據內容調整尺寸的設計思想能夠實施。
    2. 兩段布局兩段布局是指在兩個完全不同的階段來確定控件的尺寸。在這兩個階段布局模型讓父布局控件和子控素後尺寸的約定。兩個階段分別是測量(Measure)和排列(Arrange)。測量階段需要做的主要工作是: 對整個UI頁面的檢測,並詢素的期望尺寸(Desired Siz素返回一個可用的尺寸(Available Size),當素都被詢問並測量好以後,就進入到排列階段。在排列階素通知素的實際尺寸(Actual Size)和位置。
    在兩段布局素需要協商出需要的尺寸大小,涉及可用尺寸、期望尺寸、實際尺寸,在此辨析3個尺寸。其中,可用尺寸是測量階段的初始約束值素願素的空間值; 期望尺素想要的尺寸; 實際尺素分素的終尺寸。這3個尺寸要符合下面的不等式條件。
    Desired Size≤Actual Size≤Available Size
    了解WPF合成布局模型,學習WPF布局機制,纔能理解合成布局模型的來龍去脈,在頁面布局時做到得心應手。
    WPF布局是通過面板(Panel)素進行全面規劃和安排。簡單地說,就是把一些控件有條理地擺放在界面上合適的位置。在應用程序界面設計中,素布局至關重要,它可以方便用戶操作,並用清晰的頁面邏輯呈現用戶信息。如果內置布局控件不能滿足需要,用戶還可以創建自定義素。3.1布 局 原 則
    WinForm的布局是采用基於坐標的方式,當窗口內容發生變化時,裡面的控件不會隨之動態調整,用戶體驗不夠好。而WPF采用了基於流的布局方式,像Web開發模式。流式布局特點是: 素總是默認地自動向左上角靠近,在設計時,通素相對位置的方式使其達到預計的效素的位置依賴素的位置和尺寸。
    3.1.1合成布局模型
    WPF的合成布局模型是用來滿足廣泛的應用場景布局,允許某種布局控件被嵌套在其他布局控件中。合成布局模型通過布局契約來實現子控件和父布局控件間的通信問題。布局契約包括兩種設計思想,即根據內容調整尺寸和兩段布局。
    1. 根據內容調整尺寸根據內容調整尺寸,即每個控件都根據內容來確定控件大小,這個設計思想應用於UI中的所有控件。例如,窗口能夠調整大小來適應它們內部的控件,文本框控件能調整尺寸來適應它內部的文本。當素會被詢問其期望的尺寸大小,以確保根據內容調整尺寸的設計思想能夠實施。
    2. 兩段布局兩段布局是指在兩個完全不同的階段來確定控件的尺寸。在這兩個階段布局模型讓父布局控件和子控素後尺寸的約定。兩個階段分別是測量(Measure)和排列(Arrange)。測量階段需要做的主要工作是: 對整個UI頁面的檢測,並詢素的期望尺寸(Desired Siz素返回一個可用的尺寸(Available Size),當素都被詢問並測量好以後,就進入到排列階段。在排列階素通知素的實際尺寸(Actual Size)和位置。
    在兩段布局素需要協商出需要的尺寸大小,涉及可用尺寸、期望尺寸、實際尺寸,在此辨析3個尺寸。其中,可用尺寸是測量階段的初始約束值素願素的空間值; 期望尺素想要的尺寸; 實際尺素分素的終尺寸。這3個尺寸要符合下面的不等式條件。
    Desired Size≤Actual Size≤Available Size
    了解WPF合成布局模型,學習WPF布局機制,纔能理解合成布局模型的來龍去脈,在頁面布局時做到得心應手。
    3.1.2布局機制WPF界面上素的邊界框尺寸和排列是WPF自動計算出來的。通過WPF合成布局模型的學習,了解WPF渲染布局的過程中,執行測量(Measure)和排列(Arrange)兩個步驟。在布局機制中,詳細分解在WPF布局的不同階段,後臺類的調用過程。在測量階段,布局容器遍歷素,並素所期望的尺寸; 在排列階段,布局控件在合適的位置素,素的終尺寸; 這是一個遞歸的過程,界面中任何一素都會被遍歷到。因為面板可以嵌套,所以處理過程是遞歸的,布局(Layout)處理的過程如圖3.1所示。



    圖3.1WPF布局原理


    在此,簡要說明WPF布局處理過程。由WPF框架可知,所素是UIElement類型,在UIElement中定義了一些基本的關於UI顯示的屬性(如Clip和Visibility)。在UIElement.Measure(Size availableSize)方法執行階段,就是對這些基本屬性做評估,獲得適合的Size。同樣,FrameworkElement.MeasureCore(Size availableSize)方法評估時,在FrameworkElement中定義且有可能影響UI布局的屬性,得出更適合的Size。這個Size將被傳遞給FrameworkElement.MeasureOverride(Size availableSize)方法。WPF提供的Panel類型(如Grid)中就會重寫該方法來處理,處理完後將得到一個繫統期望的Size(稱為DesiredSize)。布局繫統將按照這個Size來顯示該Element,測量(Measure)階段結束。Size確定後,把Size包裝為Rect實例,傳遞給UIElement.Arrange(Rect finalRect),進行排列(Arrange)處理。根據Size值,Arrange素創建邊界框,邊框打包到Rect實例,傳給FrameworkElement.ArrangeCore(Rect finalRect)方法。ArrangeCore將繼續評估DesiredSize,計算邊界留白(Margin,Padding)等信息,獲得ArrangeSize,並傳給FrameworkElement.ArrangeOverride(Size finalSize)。這個方法也是可重寫的,WPF提供的Panel類型會重寫該方法來處理,終獲得finalSize。當finalSize確定後,ArrangeOverride執行完畢,控制權回到ArrangeCore方法,ArrangeCore把該Element放到它的邊界框中。到此,該Element的Layout處理完成。
    書摘插畫
    插圖
    插圖

    插圖

    插圖

    插圖

    插圖

    插圖










     
    網友評論  我們期待著您對此商品發表評論
     
    相關商品
    在線留言 商品價格為新臺幣
    關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
    DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
    返回頂部