首页 > 其他分享 >Silverlight路线图

Silverlight路线图

时间:2023-07-02 11:07:13浏览次数:51  
标签:控件 Silverlight 示例 XAML 路线图 应用程序 代码


 

本主题介绍用于开发基于 Silverlight 的应用程序的主要功能。其中包含使用代码示例创建基于 Silverlight 的应用程序的常规步骤,以帮助您初步了解如何编写代码。

本主题包括下列各节。

  先决条件

除了安装 Silverlight 3 运行时之外,无需安装任何程序,即可运行本主题中提供的所有示例。不过,如果要生成或修改这些示例,则需要使用 Silverlight 工具和正在运行的 Silverlight 项目。有关更多信息,请参见Silverlight Tools如何创建新 Silverlight 项目

本主题使用 Silverlight 的托管 API。您也可以使用 Silverlight 的 JavaScript API 开发基于 Silverlight 的应用程序。有关更多信息,请参见应用程序和编程模型

  将 Silverlight 集成到应用程序中

基于 Silverlight 的应用程序是 Silverlight 插件在 HTML 页上加载的内容。Silverlight 插件可以填充整个 HTML 页或仅填充空间的一部分。默认情况下,Visual Studio 项目允许插件占据页面的整个宽度和高度。有关详细信息,请参见如何:使用 HTML 将 Silverlight 添加到网页

如果要将 Silverlight 仅用于应用程序的一部分,则可能需要从 Silverlight 代码调入 HTML 页,或从 HTML 页调入 Silverlight 代码。有关如何完成此操作的详细信息,请参见 HTML Bridge:HTML 和托管代码之间的交互。如果具有现有 ASP.NET 页,则可以在该页中嵌入 MediaPlayer 控件或 Silverlight 服务器控件。有关更多信息,请参见 Silverlight 的 ASP.NET 控件

  XAML

XAML 是一种声明性标记语言,可用来为基于 Silverlight 的应用程序定义 UI 元素。创建新的 Visual Studio 项目时,会自动创建 Page.xaml 文件。在 XAML 文件中,可以使用 XML 标记和属性 (Attribute) 创建对象和定义对象的属性 (property)。有关 XAML 的更多信息,请参见 XAML 概述

下面是一个用于创建红色矩形的简单 XAML 语句。

XAML

复制代码



前面示例生成的输出结果与下图相似。

可以使用 XAML 创建所有 UI,也可以使用 Microsoft Expression Blend 设计应用程序。Expression Blend 是一种用于创建基于 Silverlight 的应用程序的设计器工具,具有 WYSIWYG 设计图面。Expression Blend 生成可直接编辑的 XAML 文件。使用 Expression Blend 还可以挂钩事件和编写代码隐藏。有关更多信息,请参见 Silverlight QuickStart Using Microsoft Expression Blend(Silverlight 快速入门,使用 Microsoft Expression Blend)。

  布局

创建基于 Silverlight 的应用程序时,首先要决定如何设置 UI 的布局。Silverlight 提供了 3 个可供使用的布局面板。默认的面板为 Grid,它是最灵活和最强大的布局面板。

容器

说明

Canvas

在 x,y 空间中绝对定位子元素。

StackPanel

相对于水平或垂直堆栈中的另一个子元素来定位子元素。

Grid

在行和列中定位子元素。

在下面的示例中,Rectangle 元素放置在网格的 1,1 单元格中。网格使用从零开始的索引,因此该矩形出现在右下单元格中。

XAML

复制代码



前面示例生成的输出结果与下图相似。

有关布局的更多信息,请参见Silverlight 布局系统

  控件

Silverlight 中的控件允许您承载内容或其他控件,且可以设计为向用户显示状态更改。控件功能的范围从允许用户交互的元素(例如 ButtonTextBox)到元素支持复杂信息布局的元素(例如 DataGrid)。有关所有可用控件的列表,请参见控件和对话框

Silverlight 为每个控件提供了影响控件外观的默认模板。不过,您可以创建自定义模板来更改所有控件的外观和可视行为。有关更多信息,请参见控件自定义

下面的示例采用上面的示例,并向网格的 0,0 单元格添加一个按钮。

XAML

复制代码




前面示例生成的输出结果与下图相似。

  添加代码逻辑

默认情况下,Visual Studio 项目包含一个代码文件(有时称作代码隐藏文件)。该代码文件包含 Silverlight 通过公共语言运行时 (CLR) 支持的托管语言之一(例如 C# 或 Visual Basic)。有关 CLR 和 Silverlight 的更多信息,请参见公共语言运行时

代码隐藏文件名称采用 Page.xaml 的形式并追加了语言类型(例如 Page.xaml.cs)。使用代码隐藏文件可以向 XAML 对象应用逻辑。可以使用代码创建 UI 对象,然后将它们添加到可见元素树中。另外,可以从 XAML 访问在代码隐藏文件(和项目中包含的任何代码文件)中创建的类。例如,您可以定义自己的控件,然后使用 XAML 创建它们的实例。有关更多信息,请参见 XAML 名称范围Silverlight XAML 命名空间以及将 XAML 命名空间映射为前缀

下面的示例添加一个将矩形颜色更改为蓝色的 Click 事件处理程序。

使用 XAML,将 Click 事件添加到 Button,将 x:Name 属性添加到 Rectangle。使用 x:Name 可以引用代码隐藏文件中的矩形。

XAML

复制代码




在代码隐藏文件中,定义 Click 事件处理程序。有关如何使用事件的更多信息,请参见Silverlight 的事件概述

Visual Basic

复制代码


Private Sub Button_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)    rect1.Fill = New SolidColorBrush(Colors.Blue)End Sub
 
C#

复制代码


private void Button_Click(object sender, RoutedEventArgs e){    rect1.Fill = new SolidColorBrush(Colors.Blue);}


前面示例生成的输出结果与下图相似。

运行此示例

  动态语言

用于 Visual Studio 的 Silverlight 工具包含动态语言运行时 (DLR),动态语言运行时允许动态语言(例如 Python 和 Ruby)的用户编写基于 Silverlight 的应用程序。动态语言打包成源代码,而不是编译为程序集,可以在运行时生成和编译代码。它们非常适合于灵活的交互开发风格。Silverlight 包含三种动态语言:IronPython、IronRuby 和托管 JScript。有关更多信息,请参见 Silverlight 中的动态语言

  图形

Silverlight 提供了许多向应用程序添加有趣的可视功能的选项。您可以使用绘图、形状、路径和复杂几何图形。使用画笔,可以用各种效果(例如图像、颜色渐变或视频剪辑)来填充几何图形所定义的区域。有关更多信息,请参见形状和绘图几何图形画笔

您可以在此屏幕上转换图形以及其他对象(例如,旋转或倾斜)。您甚至可以应用三维效果。请参见变换三维效果(透视转换)

可以向应用程序添加图像和图像效果。Silverlight 还包含"深度缩放",可以借助该功能轻松缩放和平移大型详图。有关更多信息,请参见图像处理Deep Zoom

下面的示例使用线性渐变画笔填充矩形。

XAML

复制代码



前面示例生成的输出结果与下图相似。

  媒体和动画

除了静态图形,还可以向应用程序添加动画、音频和视频,以使应用程序更具动态和交互性。有关更多信息,请参见动画概述音频和视频概述

下面的示例将上面示例中的矩形进行缩放,直到单击了"停止"按钮。

运行此示例

XAML

复制代码



Visual Basic

复制代码


Private Sub onl oaded(ByVal sender As Object, ByVal e As RoutedEventArgs)    AnimateRectangle.Begin()End SubPrivate Sub Button_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)    AnimateRectangle.Pause()End SubPrivate Sub Button_Click_1(ByVal sender As Object, ByVal e As RoutedEventArgs)    AnimateRectangle.[Resume]()End Sub


C#

复制代码


private void onl oaded(object sender, RoutedEventArgs e){    AnimateRectangle.Begin();}private void Button_Click(object sender, RoutedEventArgs e){    AnimateRectangle.Pause();}private void Button_Click_1(object sender, RoutedEventArgs e){
    AnimateRectangle.Resume();
}


  数据

许多基于 Silverlight 的应用程序都使用数据。可以使用控件(例如 DataGridListBox)显示数据集。若要填充 UI,可以使用数据绑定。如果将 UI 绑定到数据对象,对对象的更新将自动传播到 UI。

应用程序中的数据可能来自各种源(例如 RSS 源),但它通常采用 XML 格式。Silverlight 包含用于分析 XML 数据的 XmlReader 和 LINQ。如果要分析小块数据,LINQ 会很有帮助。有关更多信息,请参见 XML 数据

  网络

Silverlight 提供了一些用于在群中进行通信的功能。WebClient 类用于处理到客户端的内容下载。您还可以使用 WebClient 发送和接收纯文本 XML 消息。基于 Silverlight 的应用程序还可以访问 Web 服务(例如 Windows Communication Foundation (WCF)、SOAP 和 ASP.NET AJAX)。有关更多信息,请参见网络和通信


标签:控件,Silverlight,示例,XAML,路线图,应用程序,代码
From: https://blog.51cto.com/u_3319687/6603660

相关文章

  • Silverlight应用程序服务
     当使用Silverlight的托管API创建应用程序时,必须创建一个从Application派生的类。Application类提供应用程序通常要求的若干服务。它主要表示应用程序代码在Silverlight插件生命周期中的入口点。Silverlight插件生命周期自用户导航到承载Silverlight插件的网页时开始......
  • 如何创建新Silverlight项目
     Silverlight项目文件是您可以使用不同工具来创建和编辑的文本文件。例如,可以使用VisualStudio2008和ExpressionBlend来创建Silverlight项目或修改现有项目。有关更多信息,请参见ExpressionBlend文档。本主题介绍如何使用VisualStudio2008来创建和生成新的Silver......
  • 关于学习Silverlight2.0的重要声明 ^_^
    我开始学习Silverlight的时,版本3都出来了。 看了一下苏鹏的《Silverlight探秘系列课程》。原本打算好好学习学习这个课程的,可他的代码实在是少的可怜。没几课是有代码的。忽然发现大大的浪费了我的时间。 于是终止这个课程的学习,起码我不能太过于一本正经的学习这个了。不过话又......
  • 了解Silverlight调用
    HTML页面会调用Default.html.js源代码页中的createSilverlight()。Sys.Silverlight.createObjectEx({source:"Scene.xaml",parentElement:document.getElementById("SilverlightControlHost"),id:"SilverlightControl",properties:{width:&q......
  • 微软欲用Silverlight阻击Flash
    互联网从诞生至今经历了由文字到音频再到视频的蜕变,宽带时代的到来也再次为互联网视频的发展起到了推波助澜的作用.而在互联网多媒体互动领域,则一直是Flash独领风骚,面对这一不断壮大的市场,作为全球软件巨头的微软也开始蠢蠢欲动,欲用其Silverlight来改写这一市场格局.支持多......
  • 微软Silverlight简介
    WPF与Silverlight有何不同?WPF(WindowsPresentationFoundation),主要是提供统一的展现层模组,来建立诸如WindowsVista智慧型使用者体验,包含了使用者介面、3D模组、多媒体、文件等;而Silverlight是跨浏览器上的外掛,传达下一代网页多媒体互相性功能,隶属于WPF功能上的子集,并可与Ajax......
  • 构建一个简单的Silverlight应用程序
    我们先来看一看MicrosoftExpressionBlend,使用该工具创建一个XAML格式的非常简单的应用程序,以供Silverlight使用。要在Blend中创建Silverlight应用程序,请选择File(文件)->Newproject(新建项目),此时会打开“NewProject”(新建项目)对话框。请参见图1。选择OK(确定),即会创建......
  • 2023年最新Android Framework源码高级笔记+学习路线图+硬核资料库,跪着啃完了。。。
    虽然疫情已经过去,餐饮、旅游一些实体经济迅速回暖,但是互联网的寒冬却还没有过去,很多大厂都在裁员,裁员比例还挺高,我们一千多人的公司就直接裁掉30%。今年的各大公司基本只有两个目标:一个是营收,那些投入产出比不高的项目或者事情都暂时搁置,可做可不做的就不做;另外一个就是降本增效,通......
  • 图灵高等数学书单(附阅读路线图)
    题图|byDarkmoonArt_de from Pixabay图灵高等数学书单一共分为8类19本独立图书+三大套系图书(这个书单会不断加入优秀之作),其中大部分由世界级数学大师精心打造,它们或经典,或通俗,属于高等数学参考书中的翘楚之作。对于学生人群,这些书是国际知名高校的指定教材,示例丰富且涵......
  • Silverlight揭秘
    Silverlight揭秘“我从这本书里学到太多东西……作者对Silverlight技术的热情洋溢在字里行间……毫无疑问,这是Silverlight的第一书。”——KenCox,微软ASP.NETMVP,ASP.NET3.5ForDummies一书作者 “在逐页啃过微软文档和其他Silverlight图书之后,我必须说,......