自学silverlight 5.0

那是一个silverlight游戏:

接了个单子,非要用Silverlight 5来作三个等级次序,从前平素没接触过那东西,为了职业,硬着头皮也要上了。研究了意气风发晚上,大至收拾出后生可畏都部队分品类中须要的东西,以下作为初探记录:

Silverlight 5与Javascript的攀谈方式

Silverlight 5归属客商端的东西,顾客端的东西与服务器端交换,第有的时候间想到了基于javascript的ajax那几个万能胶,所以先从Silverlight 5与Javascript交互作用方式动手。

一、Silverlight 5发言,Javascript倾听

从Silverlight 5里向Javascript发送程序运维诉求。
Silverlight 5端代码具体如下: 

HtmlPage.Window.Invoke("Javascript函数形式", "传值-Oyiboy");

经过上述代码能够直接在Silverlight 5里运维Javascript的本子代码,并发送供给的数码出来。

二、Javascript发言,Silverlight 5倾听

Javascript使用ajax获取服务器端数据后发送给Silverlight 5,以达到Silverlight 5与劳动器端的相互成效。
Silverlight 5端代码具体如下:

//设置值
[ScriptableMember()]//那行是十分重要,必须有其生龙活虎javascript手艺央浼到这么些情势
public void setVal(string D)
{
this.textView.Text = D;
}
//javascript主动供给重返值
[ScriptableMember()]
public string returnVal()
{
return this.textView.Text;
}

Html代码调解:
急需在Silverlight 5插件的object代码内里加多以下参数设置句,以实现插件在加载后收获siliverlight对象。

<param name="onLoad" value="siliverLoaded" />

Javascript代码具体如下:

//siliverlight对象
var siliverlightObj = null;
//上面那个HTML代码内设置的Silverlight 5 onLoad事件触发的函数
function siliverLoaded(sender, args) {
siliverlightObj = sender.getHost();
}

//以下代码中的.buttonSet和.buttonReu是两个带这些class的按钮,按钮就不详细写出来了
//这个是运行Silverlight 5内的setVal方法
$(".buttonSet").click(function () {
siliverlightObj.Content.Main.setVal("javascript传入值-Oyiboy");
})
//这个是运行Silverlight 5内的returnVal方法
$(".buttonReu").click(function () {
alert(siliverlightObj.Content.Main.returnVal());
});
// hovertree.com

 

上述多少个办法,灵活利用的活基本上就完全消除了Silverlight 5与服务器端之间的沟通,好呢,固然那篇的事物的核心是Silverlight 5与Javascript,但提起底指标依旧Silverlight 5与服务器端的相互,反正ajax亦不是什么样新物,所以就跳过了。

感想:通过Silverlight 5的指标siliverlightObj.Content.Main这一大窜东西来看,siliverlightObj仍可以够作越来越多的事了,具体还要稳步索求了,假设之后有亟待利用的话,还会出那个的求证随笔吧,恐怕。

补漏: 
关于siliverlightObj.Content.Main中的Main是指在Silverlight 中app.xaml的Application_Startup事件中注册的探访名称,具体代码如下:

private void Application_澳门新葡萄京所有网站,Startup(object sender, StartupEventArgs e)
{
this.RootVisual = new MainPage();
System.Windows.Browser.HtmlPage.RegisterScriptableObject("Main", this.RootVisual);
}

从代码中可以知道,假诺有四个xaml页的话,只要在此边登记不相同的名目就足以援引分化xaml页内申明的Javascript方法了。 
刚好收拾代码时在APP.xaml开采那句代码才纪念把那个给漏了,明日补回。

silverlight加密:

转自:

silverlight数字石英钟:
澳门新葡萄京所有网站 1

本文由澳门新葡萄京所有网站发布于澳门新葡萄京所有网站,转载请注明出处:自学silverlight 5.0

TAG标签:
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。