Silverlight与JavaScript的交互操作

ilverlight与JavaScript的交互操作

Silverlight和JavaScript交互介绍以及简单Demo演示,主要包括JavaScript操作Silverlight数据、Silverlight操作JavaScript数据以及数据模版绑定数据。

1.Silverlight和JavaScript概念 
可能有的朋友对于这两技术都很熟悉,有的可能不是很熟悉,为了下面好理解简单介绍一下。 
(1).JavaScript 
JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它是一种动态、弱类型、基于原型的语言,内置支持类,做Web开发应该是常用的技术。 
(2).Silverlight 
Silverlight是一个跨浏览器的、跨平台的插件,是基于NET FrameWork的媒体体验和丰富的交互式应用程序。Silverlight提供灵活的编程模型,并可以很方便地集成到现有的网络应用程序中。Silverlight可以对运行在Mac或Windows上的主流浏览器提供高质量视频信息的快速、低成本的传递,一种富客户端技术。

2.简单理解SL与JS交互 
Silverlight与JavaScript交互操作可分为两种:JavaScript操作Silverlight和Silverlight操作JavaScript,可能理解不是很到位,欢迎补充。 
(1).对于JavaScript操作Silverlight的理解 
使用浏览器桥对象可以分两步来处理: 
A.在服务端页面加载完毕将Silverlight注册成宿主HTML页可进行脚本调用对象。 
(需指定调用Silverlight插件的ScriptKey以及指定服务端公开接口,供JavaScript对象调用) 
B.在客户端找到调用的Silverlight对象,调用服务端相关对象和接口操作数据。 
(还是Silverght机制编写逻辑,只是开放服务端接口,供JavaScript调用执行不同数据操作)

(2).对于Silverlight操作JavaScript的理解 
A.在客户端定义JavaScript的相关JS函数方法操作。 
B.在服务端通过Silverlight封装的对象获取客户端的JS函数,执行不同的脚本操作。 
(使用 HtmlPage.Window.GetProperty获取客户端的JS函数,执行InvokeSelf传递参数操作JS函数)

3.示例Demo演示
这里不介绍如何创建一个Silverlight程序,感兴趣的话可以查查相关资料,使用VS2010新建项目选择Silverlight应用程序就可以。 
(1).Demo效果图展示
简单介绍一下这个Demo,Demo效果图如下: 
Silverlight与JavaScript的交互操作
这里的使用Div布局将页面切成2大块,左边的数据操作,右边的BingMap的展示(是用来展示SL操作JS的实现动态切换)。
左侧是Silverlight效果,整体使用Grid分配布局,使用三个Border布局进行不同的数据展示,数据采用数据模版绑定,左侧下面是一个按钮操作Div(是用来展示JS操作SL的数据实现动态加载)
(2).Demo代码
1).Silverlihgt项目Web项目中宿主ASPX页面HTML代码:(也可放在宿主HTML页面中)

Silverlight与JavaScript的交互操作 View Code

2).Silverlight项目MainPage.xaml页面代码:

Silverlight与JavaScript的交互操作 View Code

3).Silverlight项目MainPage.xaml.cs代码:

Silverlight与JavaScript的交互操作 View Code

(3).Demo代码简说
1).对于宿主页面注意:BingMaps脚本地址引入及其布局调整
Silverlight与JavaScript的交互操作

 2).对于MainPage.XAML页面布局
Silverlight与JavaScript的交互操作

3).对于MainPage.xaml.cs
Silverlight与JavaScript的交互操作

比较简单容易理解,对于Silverlight和JavaScript交互有更好理解的欢迎交流。

 本文转自SanMaoSpace博客园博客,原文链接:http://www.cnblogs.com/SanMaoSpace/p/3280688.html,如需转载请自行联系原作者