[英]CRM pop-up Silverlight application in new browser window issue
我已经开发了从CRM表单启动的silverlight应用程序。 该表单具有一个字段,并且在该字段的OnChange事件中,它调用window.open打开HTML Web资源:
window.open(serverUrl +“”)...
HTML Web资源包含一个嵌入了Silverlight控件的iframe。
silverlight控件具有“保存数据”按钮,可将数据保存回CRM表单。 这些在我的开发PC上都可以正常工作,但是在其他PC上,数据不会保存回CRM。
我放入调试消息,并且Xrm对象为null。 在Silverlight代码中,我通过以下方式访问Xrm对象:
HtmlPage.Window.Eval(“ document.parentWindow.opener.Xrm”)作为ScriptObject;
这在我的开发PC上有效,但在其他PC上无效,有人知道为什么会这样吗? 这是权限或浏览器设置问题吗?
我还尝试在Silverlight控件打开的同时在另一台PC上的IE开发人员工具的脚本窗口中运行“ document.parentWindow.opener.Xrm”,并且可以看到DOM对象吗?
问候,
杰瑞
看来我必须直接在Silverlight中获取Xrm对象才能使其在IE9中工作:
window = HtmlPage.Window.Eval(“ document.parentWindow.opener.Xrm”)作为ScriptObject;
这似乎在IE9中无效,仅在IE8中有效:
window = HtmlPage.Window.Eval(“ document.parentWindow.opener”)作为ScriptObject;
xrmObject = window.GetProperty(“ Xrm”)作为ScriptObject;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.