Pergunta

Eu tenho um asp.net website com um mestre-de-página, pode usar o iframe então, a minha .aspx páginas de carga dentro da iframes.(O que significa que não carrega o mestre-de-página)

Meio que como a minha iframe vai ser o contentplaceholder ou talvez o contentplaceholder será lá dentro?

Qualquer Idéias?

Foi útil?

Solução

tente isso

<iframe name="myIframe" id="myIframe" width="400px" height="400px" runat =server></iframe>

Exponha este iframe na página principal do code-behind:

public HtmlControl iframe
{
get
{
return this.myIframe;
}
}

Adicionar a MasterType directiva para a página de conteúdo para rigidez de Página-Mestre.

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits=_Default" Title="Untitled Page" %>
<%@ MasterType VirtualPath="~/MasterPage.master" %>

No code-behind

protected void Page_Load(object sender, EventArgs e)
{
this.Master.iframe.Attributes.Add("src", "some.aspx");
}

Outras dicas

Como sobre:

<asp:HtmlIframe ID="yourIframe" runat="server" />

É apoiado desde então .Net Framework 4.5

Se você tiver Problemas ao usar este controle, você pode dar uma olhada aqui.

Você pode pensar em um iframe, como uma janela de navegador incorporada que você pode colocar em uma página HTML para mostrar uma outra URL no seu interior.Essa URL pode ser totalmente distinta de seu web site/aplicativo.

Você pode colocar um iframe em uma página HTML, então você pode colocar um dentro de um contentplaceholder em um formulário da web que tem uma Masterpage e ela vai aparecer com qualquer URL que você carregar em (via Javascript), ou C# se você ligar o iframe em um lado do servidor (controle derunat='server') na última página HTML que seu webform produz quando solicitado.

E você pode carregar um URL em seu iframe é um .aspx página.

Mas - iframes não tem nada a ver com o ASP.net mecanismo.Eles são elementos HTML que pode ser feito para rodar no lado do servidor, mas eles são essencialmente de 'burro' e não gerenciado/desligado para o ASP.Net mecanismos - não confundir um Contentplaceholder com um iframe.

Aliás, o uso de iframes ainda é controversa - você realmente precisa usar um?Você pode pagar o negativo trade-offs associados a eles e.g.a falta de histórico de navegação ...?

Outra opção é o uso de marcadores de posição.

Html:

<body>
   <div id="root">
      <asp:PlaceHolder ID="iframeDiv" runat="server"/>
   </div>
</body>

C#:

iframeDiv.Controls.Add(new LiteralControl("<iframe src=\"" + whatever.com + "\"></iframe><br />"));
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top