2013-11-20 4 views
1

С учетом следующего кода ниже. Как я могу отобразить другую веб-страницу или содержимое внутри заполнителя через событие onClick сервера в коде C#; похожего на ныне несуществующий iframe. Я берусь за обработку всех событий с помощью кода с боковой стороны (C#, asp.net 4.0)asp.net PlaceHolder - загрузка содержимого в

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"></asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="MainContentPlaceHolder" 
runat="Server"> 
    <asp:PlaceHolder runat="server" ID="PlaceHolder1"> 
</asp:PlaceHolder> 
</asp:Content> 
<asp:Content ID="Content3" ContentPlaceHolderID="NavigationContentPlaceHolder" Runat="Server"> 
<uc1:NavigationUserControl runat="server" ID="NavigationUserControl" /> 
</asp:Content> 

Заранее благодарю вас!

ответ

2

Вы можете использовать WebClient, чтобы получать страницу от URI. (Он также может отправлять содержимое в URI тоже.)

<asp:Button runat="server" ID="Button1" OnClick="Button1_Click" 
    Text="Load Page"/> 
<asp:PlaceHolder runat="server" ID="PlaceHolder1"> 
</asp:PlaceHolder> 

protected void Button1_Click(object sender, EventArgs e) 
{ 
    var uri = new Uri("http://www.stackoverflow.com"); 
    var result = new WebClient().DownloadString(uri); 
    PlaceHolder1.Controls.Add(new LiteralControl(result)); 
} 
+0

Абсолютно красивая победа. Не могу вас поблагодарить. Красивое решение. – BJC

Смежные вопросы