Silverlight 3/4新特性

转载自《http://www.cnblogs.com/nasa/archive/2009/07/12/new-future-of-sl3.html》


一、Silverlight 3 新特性


Silverlight官方网站列出了Silverlight 3的新特性

  • 支持高质量视频和音频
    • 直播和点播的真高清(True HD 720P+)平滑流媒体
    • 支持更多格式
    • 全屏真高清回放
    • 扩展的媒体格式支持
    • 业界领先的内容保护技术
  • 赋予更丰富的体验
    • 透视3D图形
    • 像素着色支持
    • 位图缓存
    • 新的位图API
    • 主题化的应用程序支持
    • 动画效果
    • 增强的控件换肤功能
    • 文本呈现和字体支持的改进
  • 提高了RIA的生产力
    • 有60多个控件,并附有源代码
    • 支持深层链接(Deep Linking)
    • 搜索引擎优化(SEO)
    • 增强了数据支持
      • Elements到Element的绑定
      • 数据窗体
      • 为数据验证提供了新特性
      • 支持业务对象
    • 提升了性能
      • 应用程序函数库缓存
      • 增强了Deep Zoom功能。新版本的Deep Zoom Composor工具也同时发布。
      • 支持二进制XML传输
      • 支持本地连接
  • 更高级的辅助功能(Accessibility)特性
  • 脱离浏览器运行。对于这个特性的应用,大家可以访问这两个示例来体验:TED PlayerWebby Awards Player
    • 运行在浏览器之外
    • 支持桌面快捷方式和开始菜单
    • 更可靠和安全
    • 流畅的安装过程
    • 自动升级
    • 互联网连接检测

与此同时,Silverlight 3 Tools for Visual Studio 2008 SP1也发布了最终版,具体的特性是:

  • 提供了Visual Basic和Visual C#的项目模板
  • 提供了XAML的智能感知和代码生成功能
  • 可以调试Silverlight应用程序
  • 可以远程调试Mac系统上的Silverlight应用程序
  • 支持Web引用
  • 提供了WCF模板
  • 支持Team Build和命令行构建
  • 支持可缓存透明平台扩展(cached transparent platform. extensions)
  • 支持Silverlight 3脱离浏览器应用程序的开发和配置

由于上述工具并没有提供Silverlig应用程序界面设计器,所以微软还推出了Expression Blend 3的RC版本。值得一提的是,这个版本附带了大家期待已久的SketchFlow原型设计工具。而Blend 3的新特性在MIX09的时候已经为大家所熟知了:

  • SketchFlow。微软给出了SketchFlow的一个概述,Christian Schormann在其博客上也介绍了SketchFlow的概念SketchFlow Map的使用,他打算写一个系列的文章来介绍SketchFlow,大家可以可时常关注下。
  • 支持Adobe Photoshop和Illustrator文件的导入。
  • 行为。零代码为应用程序添加交互功能。
  • 示例数据。方便地为应用程序生成示例数据,方便测试功能的运行和显示效果。
  • 对设计和开发体验进行改进。

Silverlight作为微软重要的RIA开发平台的一部分,只是解决了前端界面的问题。所以微软炮制出了RIA Services这个框架,来辅助大家快速开发运行在中间层上的业务逻辑,以及控制对数据的访问。伴随着Silverlight 3的正式发布,RIA Services也更新到了7 月预览版

var m = window.__blog.preRenderPosts; if (m) { m(); }

二、Silverlight 4 RC]新特性指引


在MIX10大会上,silverlight 4 RC发布了。这里版本和之前发布的silverlight 4 beta有产生了一些变化,这里讲系统的介绍一下这些变化以及新的特性。
http://timheuer.com/blog/archive/2010/03/15/whats-new-in-silverlight-4-rc-mix10.aspx
首先先预备工作环境

ok开始吧~  这里整理出来一些比较重要的变更以及新的特性。
变更 新特性
  • RichTextBox 改进
  • WebBrowser control
  • Printing API enhancements
  • Native automation (COM interop)
  • Language/Script. support
  • Networking and Sockets
  • 摄像头、剪切板等的用户对话框 
  • XAP Signing
  • Custom window chrome for trusted applications
  • Pinned full-screen mode
  • WCF RIA Services Toolkit
  • ContextMenu control
  • SLLauncher silent installs

关于Visual Studio 2010

在为Visual Studio 2010安装Silverlight 4 toos之前请先给VS安装一个 补丁文件

RichTextBox(之前称为RichTextArea)

Silverlight 4 包含了一个可以编辑显示富文本的新控件RichTextBox(在beta时他被称为RichTextArea)。这里他有了一些变化,根据大家的意见更名为 RichTextBox。在新特性上他提供了可以获取运行时显示内容的XAML能力,这个对保存内容以及在意外情况下找回内容十分的有用。获取XAML十分的简单
string richText = MyRichContent.Xaml;
这里还提供了新的文本选择、定位API。更加详细的请看我的这一篇文章《 [Silverlight 4 RC]RichTextBox概览

WebBroswer Control

之前的Beta版本中提供了在OOB模式下显示Html内容的机制。这个版本中只是有一些API发生了变化。其中的HtmlBrush现在被称为 WebBrowserBrush。
更加详细的请看这两篇文章《 [Silverlight 4 RC]WebBrowser概览》《 [Silverlight 4 RC]WebBrowserBrush概览

Painting API enhancements

打印API的增强能帮助开发者查询打印页面的大小以及打印的区域。
之前:
PrintDocument doc = new PrintDocument();
doc.DocumentName = "Sample Document";
doc.Print();
之后:
PrintDocument doc = new PrintDocument();
doc.Print("Sample Document");

Native automation (COM interop)

一些API产生了变化,运行需要OOB下的高级信任模式。
之前:
dynamic excel = ComAutomationFactory.CreateObject("Excel.Application");
之后:
dynamic excel = AutomationFactory.CreateObject("Excel.Application");

Language/script. support

Silverlight现在有了很棒的多语言支持,包括了泰国文和越南文子,还增加了对印度多字符的支持。
Script
Language
Bengali
Oriya
Malayalam
Kannada
Tamil
Telugu
Gujarati
Gurmukhi
Devanagari


Bengali, Assamese, Manipuri 
Oriya 
Malayalam 
Kannada 
Tamil 
Telugu 
Gujarati 
Punjabi 
Hindi, Marathi, Sanskirt, Konkani, Kashmiri, Nepali, Sindhi 



Networking

在beta期间socket端口被限制在收信任的模式下运行,在这个RC版本了这个限制被取消掉了。
另外,ClientHttp增加了UpLoadProgress状态以及缓存的支持。


摄像头、剪切板等的用户对话框
上边所提到的对话这里可以统一称作“用户授权对话框”。当一些香情况访问机器硬件、摄像头、麦克风、剪切板等的设备,或是增加独立存储空间等的操作都将要询问用户是否允许。在beta版本中只是最基本的yes和no,在这里发布版本中为了提搞用户体验增加了一个“Remember my answer”记住我的选项。
当然这个“记住我的选择”你可以在silverlight的Configuration中的Permission选项卡下做修改。

高级信任模式下的证书认证

在启用高级信任模式后的OOB应用你会发现他的安装界面和之前的OOB安装界面有了很大的区别。从安全角度上来说未经过证书认证的xap,在安装界面时总是有黄色警戒提示,而且不会显示App的Icon在安装界面上。
windows:

mac osx:

在签名后黄色的警戒没有了,Icon也显示了出来。
windows:
mac osx:

另外未经过证书认证的xap OOB SL应用是无法自动的进行更新(CheckAndDownloadUpdateAsync)。


OOB模式窗体边框样式

之前做过 wpf开发的朋友应该知道。wpf是可以自定义不规则边框的。在这里silverlight 的OOB模式也提供了类似的功能。他提供了三种样式的边框,一个是大家之前常用的,这里就不多做解释了。另外两个,一个是无边框模式,他是一个四四方方的矩形直接显示内容。还有一个,就是在之前的无边框模式下将直角边缘改成圆角边缘。
你可以在OOB模式下方选择边框样式。
这里再看一下效果
传统的边缘:
圆角无边框样式:


Pinned full-screem mode

可固定的全屏模式,不知道大家有没有多显示器的开发环境。目前我就是一台笔记本在外接一个22寸的显示器。在实际应用中,可能会需要一遍在开发环境,另一个显示器全屏播放一个电影~。  但是要是在开发环境中的显示器点击鼠标会导致另外的全屏电影模式的显示器退出全屏回到普通状态。在这个发布版本里新增加了一些API来完善这个在多显示器模式下的全屏模式。
App.Current.Host.Content.FullScreenOptions = System.Windows.Interop.FullScreenOptions.StaysFullScreenWhenUnfocused;
一旦上边的代码生效,全屏模式将一直保持下去直到用户按下esc键或者手动点击退出全屏按钮,全屏模式才会退出。

ContextMenu control

在beta版本里新增加了右击事件,在绝大多数情况下这个事件被开发人员用来做了右键菜单。这里最新发布的Toolkit for March 2010里新增加了一个ContextMenu控件来实现右击菜单的功能。

SLLauncher silent installs

这个版本里应用sllanucher.exe可以允许用户通过命令行的方式开部署OOB模式的silverlight应用。
"%ProgramFiles%\Microsoft Silverlight\sllauncher.exe" /install:"D:\deploy\demoapp.xap"
/origin:"http://foocompany.com/apps/ClientBin/demoapp.xap"
/shortcut:desktop+startmenu 
/overwrite

WCF RIA Services Toolkit

在你安装了silverlight 4 Tools for Visual Studio会自动的给你装上WCF RIA Service。
其中包括:
  • LinqToSql DomainService
  • SOAP endpoint – enabling exposing a SOAP endpoint for your DomainService
  • JSON endpoint – enabling exposing a JSON endpoint for your DomainService
  • ASP.NET DomainDataSource – enabling your ASP.NET application to talk to your DomainService

你可能感兴趣的:(silverlight)