WPF教程一:基礎

文章出處: http://www.javashuo.com/article/p-qbzcbvhf-kd.htmlhtml

1、WPF簡介
  WPF:WPF即Windows Presentation Foundation,翻譯爲中文「Windows呈現基礎」,是微軟推出的基於Windows Vista的用戶界面框架,屬於.NET Framework 3.0的一部分。編程

  它提供了統一的編程模型、語言和框架,真正作到了分離界面設計人員與開發人員的工做;瀏覽器

  同時它提供了全新的多媒體交互用戶圖形界面框架

2、WPF特色
一、統一的編程模型
  WPF提供的編程模型統一普通控件、語音、視頻、文檔3D等技術,這些媒體類型可以統一協調工做,下降了咱們的學習成本。
二、與分辨率無關
  WPF是基於矢量繪圖的,所以它產生的圖形界面可以支持各類分辨率的顯示設備,而不會像WinForm等在高分辨率的現實設備上產生鋸齒。
三、硬件加速技術
  WPF是基於Direct3D建立。在WPF應用程序中不管是2D仍是3D的圖形或者文字內容都會被轉換爲3D三角形、材質和其餘Direct3D對象,並由硬件負責渲染,所以它可以更好的利用系統的圖像處理單元GPU,從硬件加速中得到好處。
四、聲明式編程
  WPF引入一種新的XAML語言(Extensible Application Markup Language)來開發界面。使用XAML語言將界面開發以及後臺邏輯開發很好的分開,下降了先後臺開發的耦合度,使用戶界面設計師與程序開發者能更好的合做,下降維護和更新的成本。
五、易於部署
  WPF除了可使用傳統的Windows Installer以及ClickOnce方式來發布咱們的桌面應用程序以外,還能夠將咱們的應用程序稍加改動發佈爲基於瀏覽器的應用程序。編輯器

3、經常使用的輔助開發工具
KAXAML:是一個輕量級的XAML編輯器,使用它咱們能夠快速的查看XAML代碼以及XAML所展現的UI界面。
Microsoft Expression Blend:簡稱(Blend)它是WPF UI界面設計師必備工具,利用它咱們能夠設計出很是精美的UI界面,以及界面的樣式、模板、動畫等資源。
下載地址:
KAXAML:http://www.kaxaml.com/
Blend:https://msdn.microsoft.com/zh-cn/(搜索Blend)工具

 

4、開發基礎學習

一、新建WPF應用程序開發工具

選擇菜單->「文件」->「新建」->「項目」,在「新建項目」對話框中選擇WPF應用程序,修更名稱爲WpfDemo,而後點擊「肯定」按鈕,以下圖所示:動畫

 

二、生成的文檔結構圖以下:spa

三、在App.xaml中的「StartupUri」屬性能夠指定項目運行時的啓動窗體。以下圖中「StartupUri=」MainWindow.xaml」」,還能夠定義咱們須要的系統資源以及引入程序集等

,以下圖所示:

5、XAML語言

XAML語言:是微軟公司爲構建應用程序用戶界面而建立的一種新的「可擴展應用程序標記語言」,提供了一種便於擴展和定位的語法來定義和程序邏輯分離的用戶界面。
特色:
  定義應用程序的界面元素
  顯示的聲明WPF資源(樣式、模板、動畫等)
  可擴展性(自定義UI控件)
  集中關注於界面的設計和實現

6、XAML命名空間以及命名空間映射到程序集

一、XAML命名空間

開發語言會將經常使用功能以類的形式封裝,開發人員根據本身的業務需求,也會封裝知足自身業務需求的類,若是有序組織這些類?一方面,便於開發人員準確調用;另外一方面,編譯器能夠有效識別具備相同命名的類,就引入了命名空間,簡單的說,是經過相似樹狀結構來組織各類類,是一種較爲有效的類名排列方式。
而XAML和.NET其餘語言同樣,也是經過命名空間有效組織起XAML內部的相關元素類,這裏的命名空間與.NET中的命名空間不是一一對應的,而是一對多,一眼望去,都是「網址」,這裏的網址,是遵循XAML解析器標準的命名規則,而不是真正的網址(在IE中根本打不開)。

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"對應一些與XAML語法和編譯相關的CLR名稱空間,例如
<Style x:key="buttonMouseOver" TargetType="{x:Type Button}">

這裏的xmlns和xmlns:x的區別在於x做爲別名,在應用時,之前綴形式出現,而xmlns做爲默認命名空間,不使用前綴標識的元素,來自該命名空間。

XAML命名空間的語法:
xmlns[:可選映射前綴]="命名空間描述"
注意:沒有加可選映射前綴的xmlns是WPF默認的命名空間,一個xaml文件只能有一個默認的命名空間
一個完整的xaml文件,必須具有兩個命名空間。

二、自定義類或程序集映射語法
xmlns[:必選映射前綴]="clr-namespace:[命名空間];assembly=[程序集名稱]"

在同一個解決方案下面新建一個「」的項目,命名爲「WPFUserControl」,在項目的屬性裏面修改默認的命名空間爲:MyControl.WpfUserControl,添加兩個TextBlock和兩個TextBox,如圖所示:

在第一個項目裏面引用新建的用戶控件,注意:首先要添加新建用戶控件庫的引用。

三、映射到當前程序集的語法
xmlns[:必選映射前綴]="clr-namespace:[命名空間]"

在當前項目下面新建一個用戶控件,添加兩個TextBlock和兩個TextBox,以下圖所示:

在MainWindow.xaml裏面調用新建的用戶控件,須要引用命名空間:

相關文章
相關標籤/搜索