你已经确信WPF是下一代应用程序的战略级技术,你已打算利用这个机会好好规划并重新安装你的开发工作站。 那么你应该在这个工作站上放些什么,才可以创建一个完美的WPF开发环境呢? 有许多出色的工具和例子,我认为我应该把它们汇总到一个清单中从而使大家从中受益。 我也想听听你们的意见,如果我有漏掉的东西请告诉我, 我会不断地更新这份帖子。 基本环境Windows Vista,当然需要! (虽然在Windows XP SP2上也会工作得很好) Visual Studio 2005(带SP1和Windows Vista支持文件) Visual Studio 2005 Extensions for NET Framework 30 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%\WpfPerfexe 找到它(如果你使用的是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\WPFSampleszip解压到\samples\sdk目录中,这样你可以很方便地浏览所有的例子而不用去看SDK文档接口。现在启用Windows Desktop Search(点这里安装WDS 30,如果你正在运行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(Windows Presentation Foundation)是美国微软公司推出NET Framework 30的组成部分之一,它是一套基于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(继承自SystemWindowsFormsContainerControl)以及 WindowsFormsHost(继承自SystemWindowsFormsIntegration)等类达成,同时提供了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 技术。
XBAP = XAML Browser Application
作为Windows Vista的重要feature,XAML在浏览器中的应用让我心动不已。不过这东西比HTML复杂,以前ASPNET是浏览器端HTML/JavaScript+服务器端C#,HTML都是服务器端生成的;现在是浏览器端XAML/C#,服务器端可以没有,也可以是Web Service或者别的远程服务。JavaScript在浏览器里面能做的事情是很有限的,比如正常情况下不能访问文件系统;同样,运行在客户端的C#代码虽然能被自动加载,但也受安全沙箱模型限制。
假如你在运行在客户端的C#代码里面调用了个SqlCommand,那你的XBAP程序需要的安全级别就一下子变成了Full Trust。这会导致用户不能像访问普通网页一样访问你的XBAP程序,而需要通过MSI安装包安装,或者先下载个证书(就像下载ActiveX控件一样)。如果是一个普通的Internet应用,这显然不是理想的情况。
我想99%的Web应用都是需要访问数据库的。这样最佳设计应该是这样子:
XBAP (UI Layer) <-> Web Service (Business Layer) <-> Database
Business Layer里面可以根据需要分出数据层等等。
不一样的。
xbap要求浏览的用户本机安装有NET Framework 35 (SP1),ASPNET不用。
相当于在网页上的WPF application,只是访问权限是web权限。
当然也可以在IIS上host。
何谓一起用?xbap是单独的一个页面,可以放在同一个server上,由ASPNET链接到xbap页面。
以上就是关于wpf 安装配置全部的内容,包括:wpf 安装配置、我想模仿浏览器发送http Get请求给tomcat并打印出tomcat返回的报文内容,但是程序没有结果,求高人指点!、什么是WPF等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)