WEB开发网
开发学院图形图像Flash 学Silverlight 2系列(21):如何在Silverlight中... 阅读

学Silverlight 2系列(21):如何在Silverlight中调用JavaScript

 2008-10-03 11:34:53 来源:WEB开发网   
核心提示: private void submit_Click(object sender, RoutedEventArgs e){ScriptObject hello = HtmlPage.Window.GetProperty("Hello") as ScriptObject;h

private void submit_Click(object sender, RoutedEventArgs e)
{
  ScriptObject hello = HtmlPage.Window.GetProperty("Hello") as ScriptObject;
  hello.InvokeSelf(this.input.Text);
}

ScriptObject提供了任何客户端脚本的封装,不仅仅是JavaScript,使用其他的AJAX框架也可以,如jQuery等。然后调用InvokeSelf()方法,传入参数,这里ScriptObject总共提供了两个方法,Invoke和InvokeSelf,如果我们只调用脚本对象的自身,就可以使用InvokeSelf,如果脚本对象中还有其它的函数等,可以使用Invoke传入名称进行调用,两个方法的定义如下:

[SecuritySafeCritical]
public virtual object Invoke(string name, params object[] args);
[SecuritySafeCritical]
public virtual object InvokeSelf(params object[] args);

运行上面的示例:

学Silverlight 2系列(21):如何在Silverlight中调用JavaScript

输入TerryLee后点击调用,可以看到确实调用了客户端脚本:

学Silverlight 2系列(21):如何在Silverlight中调用JavaScript 

使用CreateInstance创建脚本对象

除了使用上面所说的使用HtmlPage.Window.GetProperty方法获取脚本对象之外,还有一种替代方法,即使用HtmlPage.Window属性的CreateInstance方法。还是使用上面的示例,我们在测试页中加入如下一段脚本,使用prototype为myHello添加了显示的功能:

上一页  1 2 3 4  下一页

Tags:Silverlight 系列 如何

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接