У меня есть приложение ASP.NET, которое имеет DIV и IFRAME. В DIV размещено мое приложение Silverlight. IFRAME указывает на другую страницу на моем сайте. Когда пользователь нажимает кнопку в моем приложении Silverlight, я пытаюсь установить значение в скрытом поле на странице в IFRAME и отправить страницу.
В настоящее время я вызываю функцию JavaScript на странице, на которой размещено мое приложение Silverlight. Я пытаюсь использовать функцию JavaScript, чтобы затем взаимодействовать со страницей в IFRAME через HTML DOM. Как ни странно, всякий раз, когда я получаю доступ к элементу документа в объекте FRAME, в мое приложение Silverlight передается сообщение, которое говорит:
"Тип 'slBridge' не существует. Имя параметра: typeName"
Вот код, вызывающий функцию JavaScript в моем приложении Silverlight.
HtmlPage.Window.CreateInstance("slBridge", new string[] { });
Вот мой код JavaScript:
function slBridge() {
alert("Getting to execute JS");
for (i = 0; i < window.frames.length; i++) {
if (window.frames[i].name == "bridgeIFrame") {
alert(windows.frames[i].document.title); // If I remove this line it works. I can print the value of "i" as well
break;
}
}
}
Есть ли какая-то вещь безопасности, о которой я не знаю? Если да, то как мне получить доступ к IFrame из моего приложения SL?
Спасибо