Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML Silverlight bridge和WriteableBitmap_Javascript_C#_Html_Silverlight_Writeablebitmap - Fatal编程技术网

Javascript HTML Silverlight bridge和WriteableBitmap

Javascript HTML Silverlight bridge和WriteableBitmap,javascript,c#,html,silverlight,writeablebitmap,Javascript,C#,Html,Silverlight,Writeablebitmap,我正在尝试实现,当从HTML端触发时,函数没有正确执行 我正在使用Silverlight 5 问题 我已将示例简化为在平面上渲染矩形。我的实际代码将使用 单击Silverlight按钮时,函数将执行,图像将显示渲染的矩形。单击HTML按钮时,函数仍会执行,但图像不会显示任何内容 我可以通过使用断点进行调试来验证参数是否正确传入,并且在单击任一按钮时函数是否实际执行。唯一的区别是图像的渲染 我还尝试使用中的代码触发Silverlight按钮单击。事件被触发,函数被执行,但仍然没有呈现任何内容 密码

我正在尝试实现,当从HTML端触发时,函数没有正确执行

我正在使用Silverlight 5

问题 我已将示例简化为在平面上渲染矩形。我的实际代码将使用

单击Silverlight按钮时,函数将执行,图像将显示渲染的矩形。单击HTML按钮时,函数仍会执行,但图像不会显示任何内容

我可以通过使用断点进行调试来验证参数是否正确传入,并且在单击任一按钮时函数是否实际执行。唯一的区别是图像的渲染

我还尝试使用中的代码触发Silverlight按钮单击。事件被触发,函数被执行,但仍然没有呈现任何内容

密码 HTML页面 第1页 SilverlightErrorSender上的函数,args{ //自动生成的东西 } HTML中的按钮 var slCtl=null; 函数pluginLoadedsender,args{ slCtl=sender.getHost; } document.getElementById'go'。attachEvent'onclick',函数{ slCtl.Content.MainPage.dothings300300; }; MainPage.xaml MainPage.xaml.cs 使用制度; 使用System.Windows; 使用System.Windows.Controls; 使用System.Windows.Input; 使用System.Windows.Media; 使用System.Windows.Shapes; 使用System.Windows.Browser; 使用System.Windows.Media.Imaging; 命名空间dynamicbitmap { 公共部分类主页面:UserControl { 可写位图bm; 公共主页 { 初始化组件; } [可编写脚本的成员] 公共空心圆点宽度,圆点高度 { bm=新的可写比图宽度、高度; 图1.来源=bm; 矩形rect=新矩形; 矩形宽度=250; 直线高度=250; rect.Fill=新的SolidColorBrushColor.FromArgb255,0,0,99; bm.Renderrect,空; bm.无效; } 公共无效按钮1\u单击对象发送器,路由目标 { dothings300300; } } }
在javascript onclick事件处理程序中,您尝试访问MainPage,而不在html页面中注册它

尝试用以下内容替换构造函数:

public MainPage()
{
    InitializeComponent();

    HtmlPage.RegisterScriptableObject("MainPage", this);
}
至于我,我还必须更改事件订阅代码,以使其正常工作:

document.getElementById('go').addEventListener('click', function () 
{
    slCtl.Content.MainPage.doThings(300, 300);
});

我已经在App.xaml.cs中有了RegisterScriptableObject,我试着按照您的建议将它放入构造函数中,但这没有什么区别。至于,这在传统IE版本中并不存在。我发现我必须从App.xaml.cs中删除注册。谢谢