Короче:Встраивание страницу ASPX с SilverLight приложения на другой странице
Как динамически вставлять страницы ASPX (MyAppHost.aspx
) в другой странице (Default.aspx
). MyAppHost.aspx
принимает SilverLight приложение, которое считывает строку запроса из AppHost.aspx
Более подробно:
У меня было требование, чтобы динамически создавать графическое (растровое изображение) на основе выбранных на странице Default.aspx
. Я сделал это, как показано ниже в Default.aspx.cs
:
Image1.ImageUrl = "~/MakeImage.aspx?param1=" +
Param1.ToString() + "¶m2=" Param2.ToString();
В MakeImage.aspx
:
image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
Это работает отлично. Я внес изменения в проект, чтобы использовать silverlight для создания графики. Приложение Silverlight встроено в тестовую (по умолчанию) страницу aspx (MyAppHost.aspx
) и предназначено для принятия строки запроса от MyAppHost.aspx
, как показано ниже.
В MyApp.xaml.cs
, у меня есть
if (HtmlPage.Document.QueryString.ContainsKey("param1"))
{
Param1 = HtmlPage.Document.QueryString["param1"];
}
мне нужно динамически вставлять Silverlight приложение, MyApp
(с хозяином MyAppHost.aspx?param1={0}¶m2={1}
) в Default.aspx
на основе выбора пользователя в Default.aspx
. Как это возможно?
EDIT: Как и было предложено, было бы намного проще, если бы я мог разместить приложение silverlight в Default.aspx
и использовать параметры init, а не строки запроса. Я думал о подходе, но не мог понять, как динамически передавать параметры в событии. Я добавляю a new question.
msdn.microsoft.com/en-us/library/cc838145(v=vs.95).aspx –
Это не применимо в моем случае. Я отредактировал вопрос, чтобы уточнить. – devnull
Если приложение Silverlight зависит от страницы MyAppHost.aspx, то как его загрузить в iframe по умолчанию .aspx? – rossisdead