『壹』 wpf只能在windows環境下運行嗎
主要是WPF運行辯喊在.NET上攜兆野,.NET雖然是說跨平台,但是.NET只是猜神在
Windows操作系統
之下是跨平台,卻不能誇linux等其他平台上,這樣WPF也就不能跨平台了!
『貳』 什麼是WPF
WPF(Windows Presentation Foundation)是美國微軟公司推出.NET Framework 3.0的組成部分之一,它是一套基於XML、.NET Framework、向量繪圖(vector graphic)技術的展示層(presentation layer)開發框架,微軟視其為下一代用戶界面(user interface)技術,將廣泛被用於下一代的Windows平台(Windows Vista)的界面開發。其原來代號為「Avalon」,因「我佩服」拼音首字母組合一樣,國內有人調侃地稱之為「我佩服」。 WPF使用一種新的XAML(eXtensible Application Markup Language)語言來開發界面,這將把界面開發以及後台邏輯很好的分開,降低了耦合度,使用戶界面設計師與程序開發者能更好的合作,降低維護和更新的成本。 WPF/E 是WPF的子集合,全名是:Windows Presentation Foundation Everywhere。在基於XAML與JavaScript之下,可跨越各種平台,目前 WPF/E 已演化為 Microsoft Silverlight,擔負微軟在 RIA (Rich Interactive Application, Rich Internet Application) 領域,並正面與 Adobe Flash 競爭的產品。 目前開發界的對WPF響應程度 目前已有很多人開始考慮或者已經轉向WPF,一場新的學習熱潮已經開始。但根據我最近的學習和了解,國內關於WPF的資料很少,除了msdn提供的資料以外,基本都是來自國外的資料,有些則是國外開發人員blog上的資料,當然都讓櫻凱是英文的。因此如果現在能夠引進一些WPF的書絕對是很好的時機。而且國外目前的幾本WPF書也是剛剛上市,如果我們可以盡快引進的話,絕對可以幫助國內開發人員在最短時間內趕上國際步伐。 目前國內即時通訊領導商騰訊Tencent已經發布了一款基於WPF的QQ 概念版(QQ 概念版:QQ 概念版應用微軟最新一代客戶端展現層技術(WPF),實現多點觸摸操作,是騰訊首款NUI(自然用戶交互)產品,推出了動感相框、動態背景、多Tab聊天窗口、3D交互、頌螞桌面好友等一系列新功能,為您打造完美尊貴的新體驗。),帶給網友全新的體驗;由於該產品還處於初期,許多功能都還有待完善,不過QQ概念版的出現,又讓即時通訊領域帶來了新的體驗與享受。 WPF 部份之特徵如下: [編輯] 繪圖服務 所有的圖形皆可由Direct3D產生。 目標在於統一各種顯示圖形。 Windows可以通過Direct3D 來減輕在繪圖任務上的負荷,這項技術乃基於計算機顯卡的繪圖處理單元(Graphics Processing Unit)。 支持向量繪圖(vector graphic)。 支持3D透視圖並且影響2D應用程序。 [編輯] 布署 WPF 不僅僅是建立傳統的獨立程序(standalone applications)。其部署方式可分成兩類:standalone與XAML Browser Applications(XBAP]])觀點。這些布署方式在程序的撰坦喚寫上大致類似。 獨立程序之安裝方式可以藉由 ClickOnce 或微軟安裝器(MSI)完成。獨立程序可被視為完全信任(full trust)具有完全訪問系統資源的優點。 XAML Browser Application(XBAPs)是一種寄宿於網頁瀏覽器上的程序,像是Internet Explorer。寄宿的程序可取得部份信任(partial trust)的沙箱(sandbox)環境之下,且無法取得完整的系統資源,WPF的功能亦無法完全發揮。寄宿的環境必須有意地防衛惡意的代碼。從網頁上運行XBAP(讀音 "ex-bap")必須是毫無破綻的(沒有安全性或安裝提示)。雖然這樣的寄宿程序在感觀上與傳統微軟的DLL(out of process)有相異處。 [編輯] 互操作性 WPF可與Win32互相操作:經由主導(hosting)機制,可以在Win32碼之下使用 Windows Presentation Foundation,或是在Windows Presentation Foundation環境下使用Win32代碼[1]。 Windows Forms 的互操作性亦可利用 ElementHost(繼承自System.Windows.Forms.ContainerControl)以及 WindowsFormsHost(繼承自System.Windows.Forms.Integration)等類達成,同時提供了Host Avalon Element的能力。 [編輯] 媒體播放 WPF 針對2D圖形提供形狀基元(shape primitives),內置筆刷(brushes)、畫筆(pens)、幾何(geometries),與變形(transforms)。 WPF 以Direct3D提供完整的3D功能。但是,WPF 提供更完整的集成性在於用戶界面上(UI)、文件(documents),與媒體(media)。這使得盡可以實現 3D UI, 3D 文件,和 3D 媒體。 支持了大量的圖片格式(image formats)。 WPF 支持大量影音格式,如: WMV,MPEG 以及某些 AVI 檔。 WPF 支持以時間為基礎的動畫效果,不同於以影格為基礎的處理方式。如此動畫的速度與系統效能就不會有所關連。 文件的體現支持ClearType,這提供一種次像數(sub-pixel)定位功能,強化其自然風格。WPF 同時支持 OpenType字體樣式。 [編輯] 數據鏈接 WPF 有內置數據服務結合,可以讓應用程序發展者在應用程序內鏈接並處理數據。一共有三種數據鏈接方式: one time:客戶端(client)必須忽略服務端(server)的更新動作。 one way:客戶端僅被准許讀取數據(read-only)。 two way:客戶端可讀取並讀進服務端。 數據鏈接在展示層並無太大負擔。WPF 提供有數據樣板(data templates)來控制這些數據。 [編輯] 用戶界面 WPF提供了內置元件控制項集合,包括有按鈕(button)、菜單(menu)、列表盒(list box)。內置元件缺乏DataGrid但第三協力廠商已有支持。 WPF 的邏輯層與外觀展示層已形成強力的分離模式。 元件的外貌樣品可以被完全改寫。 [編輯] 文件 對OpenType 的支持包括: 縛(Ligatures) 舊式數字(Old-style numerals) (for example, parts of the glyph hang below the text baseline) Swash variants 碎形(Fractions) Superscript 及 Subscript Small caps [編輯] 工具 在以往 Win32 應用程序發展時,絕大多數的工作都由開發人員 (Developer) 來處理,美術設計人員 (Designer) 可以涉入的相當有限,而且在 Win32 API 時代,要在用戶界面中實現特效的話,都需要撰寫大量的代碼才可以做到。 在WPF 中,因為大多數的用戶界面元素都可以利用 XAML 來聲明,因此微軟試著要將 Designer 和 Developer 結合在一起,如此可以讓 Designer 可以充份發揮,並且 Developer 也不用傷腦筋在外觀設計上,微軟的 Designer 工具為 Microsoft Expression 產品集,其中的 Expression Blend 即為設計 WPF 應用程序的設計工具,它也可以用來設計 Silverlight 程序。 開發人員仍然可以使用 Visual Studio 來發展 WPF 應用程序,在 Visual Studio 中內含 WPF Designer 可供開發人員使用。 [編輯] WPF/E 主條目:Silverlight WPF/E 發展初期為微軟計劃將 WPF 推向各平台的計劃,目前此計劃已經被發展成為 Silverlight 技術。
『叄』 wpf 安裝配置
你已經確信WPF是下一代應用程序的戰略級技術,你已打算利用這個機會好好規劃並重新安裝你的開發工作站。 那麼你應該在這個工作站上放些什麼,才可以創建一個完美的WPF開發環境呢? 有許多出色的工具和例子,我認為我應該把它們匯總到一個清單中從而使大家從中受益。 我也想聽聽你們的意見,如果我有漏掉的東西請告訴我, 我會不斷地更新這份帖子。 基本環虧高境Windows Vista,當然需要! (雖然在Windows XP SP2上也會工作得很好) Visual Studio 2005(帶SP1和Windows Vista支持文件) Visual Studio 2005 Extensions for .NET Framework 3.0 Windows SDK Expression Blend與Expression Design 工具XamlPadX, Kaxaml 與XamlCruncher:: 用來替代XamlPad工具的三個增強性工具,它們是在Windows SDK中的。 每一個工具都有它的強項: XamlPadX擁有很多出色的插件,它是基於XamlPad代碼寫出來的;Kaxaml用於演示很不錯,對間距和tab支持很好;XamlCruncher有一段高質量的可用源代碼。 Lutz Roeder's .NET Reflector: 可以方便瀏覽類層次; Snoop: 調試WPF應用程序的可視化工具,由Peter Blois開發 WPF Performance Tools: 被埋沒在SDK中的工具,應用程序工具集的必要組成部分。 你可以在%SdkTools%\WpfPerf.exe 找到它(如果你使用的是Vista,請確保你是以管理員身份運行它的,即run as an administrator) Flexible Application Template: 從應用服務PM中的一個得到替代項目模板,允許你創建一個單獨的應用程序項目,只需要改變項目類型就可以讓項目變成XBAP或富客戶端應用程序。(原文:this replacement project template from one of the app services PMs allows you to create a single application project that can flip between an XBAP (web browser project) or rich client application just with an adjustment to the project type; ) ZAM 3D: Electric Rain的工具,用於快速創建3D網格,並讓3D網格動起來 XAML Converters: 將3DS, DXF, Blender, Fireworks, Lightwave, SWF, Maya 及Illustrator的文章轉換為XAML格式的工具 創建一個代碼工具箱3D Tools for WPF: 3D表面的互動式2D、物體邊框線、3D滑鼠導航; Kevin's Bag-o-Tricks: 控制項集合,擴展並增強一些WPF自帶的類型,如ColorPicker、FolderPicker、NumericUpDown、RadioButtonList、數據控制項、動畫版tile panel和圖形控制項 UI Automation Stress: 應用程序環境壓力測試。 將這個代碼加入Debug菜單,這樣可以保證你不會因為錯誤輸入而讓你的應用程序崩潰。 示例應用程序我是斗猜那種喜歡有許多示例代碼的程序員,這樣我就可以從中拷貝概念、想法和技術。 拷貝以下這些示例示例到\samples目錄中:Patient Monitoring Sample Woodgrove Finance Sample Thailand Sample 也請把%SdkTools%\..\Samples\WPFSamples.zip解壓到\samples\sdk目錄中,這樣你可以很方便地瀏覽所有的例子而不用去看SDK文檔介面。現在啟用Windows Desktop Search(點這里安裝WDS 3.0,如果你正在運行Windows XP,並把它配置為對.xaml,.cs,.vb文件內容進行索引) 請確保設空空型置了對整個\samples目錄進行索引,因為你把所有的示例都放在裡面了。 現在,你可以很快遍歷每個示例,只需要按下Win+F,搜索BitmapSource 和ColorConvertedBitmap關鍵字,就可以看到這兩個關鍵字的使用情況。技術支持WPF MSDN論壇是產品組和其他資深社區成員經常光顧的地方,有許多以前問過的問題(和答案); WPF MSDN Newsgroup提供了一個與web論壇非常相似的服務,但是它是基於USENET新聞組形式的。 在寫本書時,那個論壇似乎訪問量更大了。 提示和技巧確保在你的系統中把Windows SDK文檔與其它的MSDN文檔融合在一起了 以管理員身份運行 Start -> Windows SDK -> Visual Studio Registration -> Integrate Windows SDK with Visual Studio 2005,這樣只需要從代碼視圖中按F1就可以了。 我在開始菜單中加入了一些快捷方式,這樣可以方便地訪問這些工具,特別是XamlPad, WpfPerf和其他一些默認情況下隱藏的工具。 如果你運行的是Windows Vista,這個提示將給你一條訪問每個項的捷徑 如果你運行的是Windows Vista,設置WPF字體緩存系統服務(Windows Presentation Foundation Font Cache)為Automatic(Delayed Start)(自動,延遲啟動),這樣可以減少WPF應用程序的啟動時間。 在Visual Studio中,設置默認的字體為Consolas —— 該字體看上去比Courier New更清楚,是專門設計用來作代碼開發的。 Consolas包含在Windows Vista或Office 2007中的,或者你可以從這里下載該字體。 在Windows SDK文檔系統中,」New in Windows Vista」索引過濾器是一個很不錯的方式,它可以防止WPF和Windows Forms API有時被混在一起的問題。 我遇到過一些開發人員偶爾會同時找到這兩個庫中的同名類型,因為文檔中沒有給出一些細節來區分這些類型。
『肆』 wpf 資料庫是webapi的項目怎麼改為本地調用執行
如果不想使用Web API方式,可以將最後兩行的代碼刪除,即刪除以下兩行代碼:
services.AddControllers();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "MyToDo.Api", Version = "態雀v1" });
});
這兩行代碼的作用是添加控帆塌早制器和Swagger文檔生成衫世器,如果不需要使用Web API,就不需要這些東西了。
另外,如果不使用Web API,可以將啟動類中的以下代碼刪除:
services.AddDbContext<MyToDoContext>(option =>
{
var connectionString = Configuration.GetConnectionString("ToDoConnection");
option.UseSqlite(connectionString);
}).AddUnitOfWork<MyToDoContext>()
.AddCustomRepository<ToDo, ToDoRepository>();
因為這些代碼都是用來配置資料庫上下文和依賴注入的,如果不使用Web API,就不需要這些東西了。
『伍』 WPF製作項目所需要的硬體,軟體,操作系統有哪些
WPF基礎知識
快速學習絕不是從零學起的,良好的基礎是快速入手的關鍵,下面先為大旦核家摞列以下自己總結的學習WPF的幾點基礎知識:
1) C#基礎語法知識(或者其他.NET支持的語言):這個是當然的了,雖然WPF是XAML配置的,但是總還是要寫代碼的,相信各位讀者應該也都有這個基礎了。
2) HTML語言:雖然WPF是窗體程序但是由於使用的XAML語言,如果以前接觸過HTML、XHTML、ASP.NET之路的東西的話會,接受這些標簽會很有幫助的,如果以前一直是從事win form開的人來說可能就要適應一下了。
3) 對C#中的代理、事件要做到熟練掌握,在.NET 3.0 版本後有增加了Routed Events,要想日後不糊塗,這個是基礎。
4) 有一定的winform或ASP.NET經驗,主要是對控制項事件的處理要有寫了解。
5) 擁有良好的面向對象的思想:思想是語言的升華(本人的OO思想完全是Java中領悟來的)。在WPF中,經常要靈活運用各種繼承關系、多態、重載等,因此一定要把基礎知識打牢固。
6) DataBinding要有所了解:Binding是WPF的一大亮點,在接觸它以前如果接觸國ADO.NET裡面的DataBinding的話對相對起來會容易接受一點,雖然這兩個有一定的不同。
7) 對設計模式要有一定的了解:當然是越深入越好了,在實際項目中,各種設計模式經常交融使用。
快速的識別並合理的運用,無論是在開發還是調試時都是非常高效的。另外,WPF存在的初衷即是表現與邏輯的松耦合,最普遍的情況就是XAML作為表現層,背後.cs文件作為邏輯層。因此,日後在從事項目工作時,要時刻陸襪謹記這一點,千萬不可背道而馳。
不要為了凸顯自己的某一些代碼特長而將各種邏輯混寫在一起,這樣非常不實際的,這一點都在校生應該尤為重要。
8) 對XML的理解:XAML也是XML,對XML的理解絕對有助於快速的接受和使用XAML,並不需要多XML有多麼高深的見解。
但是最好還是有空看一看XML相關的書籍http://www.w3.org/TR/2000/WD-xml-2e-20000814。無論模悉掘是WPF、WCP以及底層一些的SOAP等都是很有幫助的。
WPF入手練習基礎環境
開發環境:VS 2008
資料庫:本機SQL Server 2005(這里給大家一個提醒,如果大家的機子是Windows XP的話,無論是home 或是 professional.
一定不要安裝SQL Server 2005 Enterprise Edition,在《安裝 SQL Server 2005 的硬體和軟體要求》中「操作系統要求」列表有寫到2005 Enterprise Edition 不支持 XP),建議安裝Developer Edition,一定要安裝資料庫實例。
WPF練習內容
具備以上基礎條件後,開始入手練習,大家不要抱怨入手練習有寫難度,畢竟是快速入門要有一定的跳躍性:
我們要做一個WPF程序,功能很簡單:
1) 從資料庫(本地資料庫(local)/AdventureWorks中的person.contact表中提取用戶的ContactID,FirstName,LastName,EmailAddress數據,展示到Form上的一個ListView上。(由於是WPF練習,對於ADO.NET相關的東西在此不做介紹,知識使用而已)
2) 當滑鼠或其他設備選中結果某一項記錄時,在List框下面展示出細節。
3) 修改其中的內容後,結果聯動更新到List框及資料庫中。
想像以下這樣一個東西如果在以前使用winform實現會是什麼樣子呢?
應該會寫不少的方法、屬性用於界面之間及界面與資料庫之間的聯動。
今天這個練習就先展示以下WPF的技術亮點之一:
DataBinding。在製作過程中,還會為大家不斷接受一些控制項、布局等相關知識和技巧,部分相關的知識內容與此練習關系不大的,我將會用淺灰色字體帶過,對於熟悉這部分內容的讀者可以直接跳過。
建立一個WPF項目
打開VS 2008 新建一個WPF應用程序
『陸』 c# 只安裝WPF環境 導出excel表格 問題
你好
你應該安裝的是WPF程序。WPF程序需要.net framework環境。在.net framework環境下,你可以開發WPF程序,世晌引用office或者金山的的Excel組件,進行EXCEL的操作。這種方法,需要安裝office(金山沒有用過)。
可以使用第洞返握三方的組件進行開發,這樣就不依賴office。
比如,在.net framework環納慶境下,使用C#進行WPF或Winform程序開發,可以使用NPOI組件操作Excel。類似NPOI的組件還有幾個,我覺得這個是最好的。
『柒』 WPF適合作為C++程序的界面嗎相比mfc如何
WPF可以作為VC環境的界面提供,但雖然微軟號稱界面和開發分離,但實際上支持最好的還是C#,C++稍有不舒服,可以忍受。
WPF和MFC沒法比較的,中緩後者的優點就是無需運行庫支持,一個EXE到哪都可以運行(靜態編譯),缺點么,MFC是從WIN95界面基礎開發的,雖然後期做了首搭很多改進,但根上還是老的,界面不好看,開發難度大。
WPF如果說缺點,就是者培拿運行在.NET Framework 3.0及以上版本下,但界面功能確實強大,矢量支持、3D支持,應該說是新win環境下UI的首選。
『捌』 急~急~急~ WPF在64位操作系統開發,到32位系統中怎麼就不行了呢
運行庫有區別的,你應該開發的時候用32位進行開發旁隱運,如果用32位進行開發攜高,拿到64位機子上運行,一般運梁沒問題。
『玖』 vb中wpf(a,b)什麼意思
wpf是一個自定義的過程,備老有兩個參數,陸仿分別是a,b
具體得看早滾纖你這個過程wpf的代碼,才能知道是幹啥的
『拾』 WPF要什麼運行環境
需卜岩要.net 3.0。Vista和Win7有自帶,xp SP2 以上只需安裝.net 3.0就可以運行WPF應用程序。陪飢xp SP2以下不支持。型亂御包括win2000