簡介
wpf技術基於directx,完美的整合了向量圖形、2d或3d繪圖技術、檔案及多**技術。wpf將開發人員和設計人員的職責清楚的分離,提供了一種宣告程式語言xaml。同時expression blend設計可以讓介面設計更簡單。
wpf特點
基於向量繪圖技術:使用向量繪圖引擎,意味著可以無限放大和縮小圖形。
與裝置無關的單位:使用1/96的邏輯單位,這是應用程式在不同的解析度中依然能保持良好的互動性格。傳統的以畫素為單位的使用者介面,在不同的解析度下會顯示不同的大小。
宣告式的程式設計:使用xaml標記語言,進行使用者介面設計,配合**後置檔案開發應用程式,類似於web form應用程式。
web分割的布局模型:增強了流式布局模型體驗,除了使用固定空間布局外,還可以使用流式布局來動態地排列使用者控制項,使使用者介面可以適應不同的顯示裝置,同時便於建立動態內容。
豐富的繪圖模型:wpf除了可以處理基本圖形,文字塊之外,還提供了很多新的繪圖特性,比如真正的透明控制項,使用不同的透明度堆疊多個控制項及原生3d支援特性。
原生的多**、動畫支援:wpf應用程式內建了動畫特性。設計人員可以使用xaml或者blend工具進行設計。這個工具會生成對應的xaml**,進而豐富wpf應用程式的互動性。
相關程式集檔案
presentationframework.dll放置視窗、面板以及其他型別的控制項。實現了高層的抽象。開發人員所使用的大多數類都來自此。
presentationcore.dll基本型別,uielement 和visual
windowsbase.dll存放在wpf外部可能被重用的基本元素,比如dependencyobject。
milcore.dll輸出系統的核心,也是多**整合層的基礎。主要使用者和directx互動。
windowscodecs.dll底層api,使用者提供影象成像支援,比如影象處理、影象顯示、縮放bitmmap和jpeg.
direct3d提供3d影象輸出端的底層api
wpf應用程式模板
使用vs工具新建wpf程式時工包含以上四種模板:
wpf應用程式:獨立可以執行應用程式,類似windows forms的exe應用程式。
wpf瀏覽器應用程式:基於xaml的瀏覽器應用程式,以xbap作為副檔名。
wpf使用者控制項庫:用於建立可重用的、元件化的使用者控制項庫。
wpf自定義控制項庫:用於開發wpf自定義空間的控制項庫專案。
建立wpf應用程式
新建乙個wpf應用程式專案,程式結構如下:
編寫基本彈出框功能。
1、雙擊開啟mainwindow.xaml檔案,
2、從工具箱中拖乙個button控制項到頁面,修改content屬性為hello wpf,
3、雙擊控制項,進入按鈕的單擊事件**繫結,
4、編寫**
1messagebox.show(
"hello wpf"
);
執行應用程式,會彈出乙個對話方塊將會顯示hello wpf.
xaml**
1
後置**: 12
34private
void
button_click(
object
sender, routedeventargs e)
12
3456
789xmlns=
""
xmlns:x=
""
xmlns:local=
"clr-namespace:hellowpf"
startupuri=
"mainwindow.xaml"
>
12
3456
789namespace
hellowpf
}
12
3456
78910
1112
1314
1516
1718
1920
2122
2324
2526
2728
2930
3132
3334
35namespace
hellowpf
///
///
[system.stathreadattribute()]
[system.diagnostics.debuggernonusercodeattribute()]
[system.codedom.compiler.generatedcodeattribute(
"presentationbuildtasks"
,
"4.0.0.0"
)]
public
static
void
main()
}
}
引用:
WPF 10天修煉 第十天 WPF資料繫結
wpf資料繫結 資料繫結到元素屬性是將源物件指定為乙個wpf元素,並且源屬性是乙個依賴屬性,依賴屬性內建了變更通知。當改變源物件依賴屬性值之後,繫結目標可以立即得到更新,開發人員不需要手動編寫響應事件。在繫結 和繫結目標之間,可以使用mode屬性指定繫結的方法。mode屬性是system.windo...
8天入門wpf 第一天 基礎概念介紹
這些天從專案上接觸到了wpf,感覺有必要做乙個筆記,首篇還是聊聊基本的概念,要學習wpf,我們需要採用webform的思維來考慮問題。我們都知道,console和winform程式的入口函式都是main,wpf同樣也不例外,好了,我們新建乙個wpf的程式,vs自動給我們生成了乙個 其實,wpf為了簡...
mysql 第一天 MySQL 系列第一天
mysql 系列第一天這篇文章是黑馬程式設計師 mysql 教程的筆記,好好學習哦。和 mysql 資料庫的互動 客戶端單向連線認證 連線伺服器,認證身份。mysql 資料庫屬於 c s 架構,所以開啟伺服器程式後,需要通過客戶端連線它。mysql 會自帶乙個客戶端程式,可以直接輸入賬號和密碼即可連...