Compartilhar via


HtmlContainerControl.InnerHtml Propriedade

Definição

Obtém ou define o conteúdo encontrado entre as marcas de abertura e fechamento do controle de servidor HTML especificado.

public:
 virtual property System::String ^ InnerHtml { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Browsable(false)]
public virtual string InnerHtml { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.InnerHtml : string with get, set
Public Overridable Property InnerHtml As String

Valor da propriedade

O conteúdo HTML entre as marcas de abertura e fechamento de um controle de servidor HTML.

Atributos

Exceções

Há mais de um controle de servidor HTML.

- ou -

O controle de servidor HTML não é um LiteralControl ou um DataBoundLiteralControl.

Exemplos

O exemplo de código a seguir demonstra como usar a InnerHtml propriedade para definir dinamicamente uma mensagem de texto.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  protected void Page_Load(object sender, EventArgs e)
  {
    Message.InnerHtml = Server.HtmlEncode("Welcome! You accessed this page at: " + DateTime.Now);
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HtmlContainerControl Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <span id="Message" runat="server"></span>    
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

    Message.InnerHtml = Server.HtmlEncode("Welcome! You accessed this page at: " & DateTime.Now)

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>HtmlContainerControl Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <span id="Message" runat="server"></span>    
    </div>
    </form>
</body>
</html>

Comentários

Use a InnerHtml propriedade para modificar programaticamente o conteúdo entre as marcas de abertura e fechamento de um controle de servidor HTML.

A InnerHtml propriedade não codifica automaticamente caracteres especiais de e para entidades HTML. As entidades HTML permitem que você exiba caracteres especiais, como o < caractere, que um navegador normalmente interpretaria como tendo um significado especial. O < caractere seria interpretado como o início de uma marca e não é exibido na página. Para exibir o < caractere, você precisaria usar a entidade &lt;.

Por exemplo, se a InnerHtml propriedade for definida como "<b> Hello </b>", os < caracteres e > não serão convertidos &lt; em e &gt;, respectivamente. A saída renderizada ainda seria: <b> Hello </b>. O navegador detectará as <b> marcas e exibirá o texto, Hello, em uma fonte em negrito.

Cuidado

Como o texto não é codificado em HTML, é possível inserir script dentro de marcas HTML no texto. Se essa propriedade for definida dinamicamente usando a entrada do usuário, valide o valor para reduzir as vulnerabilidades de segurança. Para obter mais informações, consulte Entrada de segurança e usuário.

Para fornecer codificação e decodificação HTML automáticas, use a InnerText propriedade .

Observação

Se não houver controles filho, a InnerHtml propriedade conterá o valor String.Empty.

Aplica-se a

Confira também