MSDN的简单案例不知如何下手,请指教

tankdog 2010-03-01 11:45:21
http://msdn.microsoft.com/zh-cn/library/cc189042(VS.95).aspx
上关于“使用 JavaScript 处理 Silverlight 事件”有个简单的案例

首先在SilverlightAppDemo项目中的MainPage.xaml中加了
<Canvas Loaded="OnLoaded" />

再在SilverlightAppDemo.Web网站中的SilverlightAppDemoTestPage.html按MSDN提示加入了
function onLoaded(sender, eventArgs)
{
// Display the object type of the sender parameter.
alert("Sender = " + sender.toString());
}

可是这样SilverlightAppDemo项目编译就不通过,报如下错误:
“Error 1 Event handler 'OnLoaded' not found on class 'SilverlightAppDemo.MainPage' C:\Users\xxx\Desktop\SliverlightDemo\SilverlightAppDemo\MainPage.xaml SilverlightAppDemo


请问是何缘故?谢谢!
...全文
98 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
指间的风 2010-03-29
  • 打赏
  • 举报
回复
JavaScript HTML DOM 事件和 Loaded/onload
JavaScript 提供了一组事件,您可以使用这些事件响应网页上的变化。例如,下面的 HTML 示例演示由 JavaScript HTML DOM onload 事件触发的 JavaScript 代码。

在该示例中,JavaScript 代码是内联定义的,而不是引用事件处理程序函数。这不适用于 Silverlight 事件,对于此类事件,必须定义和引用函数。

此外,请注意 onload HTML DOM 事件和 Silverlight Loaded 之间的名称相似性。加载完整个网页之后才会引发 HTML DOM onload 事件。这意味着,网页内包含的任何 Silverlight 插件都会先引发其 Loaded 事件,然后引发 HTML DOM onload 事件。



仔细的看最后一句
TimDavid 2010-03-27
  • 打赏
  • 举报
回复
你在MainPage.xaml添加了一个Loaded事件
<Canvas Loaded="OnLoaded" />
所以在MainPage.xaml.cs中
要有一个 public void OnLoaded(Object sender,RoutedEventarg e){}
这样一个事件函数。
这样编译就不会出错了。

JavaScript大小写敏感?
jaguar_yang 2010-03-23
  • 打赏
  • 举报
回复
OnLoaded这样写的事件是c#事件,不是js事件。在Silverlight后台事件里用这个调用JavaScript:


ScriptObject jaguar= HtmlPage.Window.GetProperty("Test1") as ScriptObject;
kagad 2010-03-22
  • 打赏
  • 举报
回复
如何在Silverlight中调用JavaScript
http://www.cnblogs.com/Terrylee/archive/2008/03/12/silverlight2-step-by-step-part21-calling-javascript-from-silverlight.html
jv9 2010-03-02
  • 打赏
  • 举报
回复
Javascript是对字母大小写敏感的,你定义的函数function onLoaded(sender, eventArgs)
而你调用的是“OnLoaded”,项目自然无法识别。
jv9 2010-03-02
  • 打赏
  • 举报
回复
把JS函数放在web项目中,不能在silverlight项目中。

function onLoaded(sender, eventArgs)
{
// Display the object type of the sender parameter.
alert("Sender = " + sender.toString());
}
tankdog 2010-03-02
  • 打赏
  • 举报
回复
谢谢,我已经改成小写的了,但还是报同样的错,我觉得问题在于总是在SilverlightAppDemo项目中找这个onLoaded函数,而不是在SilverlightAppDemo.Web项目中的测试页面找onLoaded函数,请问这是何故?

8,741

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧