Freigeben über


Gewusst wie: Hinzufügen von Literal-Webserversteuerelementen zu einer Web Forms-Seite (Visual Studio)

Aktualisiert: November 2007

Fügen Sie der Seite ein Literal-Webserversteuerelement hinzu, wenn Sie Text programmgesteuert festlegen möchten, ohne zusätzliche HTML-Tags hinzufügen zu müssen. Das Literal-Steuerelement ist nützlich, wenn es darum geht, Text dynamisch in eine Seite einzufügen, ohne Elemente hinzuzufügen, die nicht Bestandteil des dynamischen Textes sind. Zum Beispiel können Sie mit dem Literal-Steuerelement HTML anzeigen, das Sie aus einer Datei oder einem Stream lesen.

Hinweis:

Zur Anzeige von statischem Text ist ein Literal-Steuerelement nicht erforderlich. Verwenden Sie dazu einfach HTML. Verwenden Sie das Literal-Steuerelement nur, wenn Sie den Inhalt im Servercode dynamisch ändern müssen.

So fügen Sie einer Web Forms-Seite ein Literal-Webserversteuerelement hinzu

  1. Ziehen Sie von der Registerkarte Standard der Toolbox ein Literal-Steuerelement auf die Seite.

  2. Optional können Sie im Eigenschaftenfenster in der Kategorie Verhalten die Mode-Eigenschaft auf Transform, PassThrough oder Encode festlegen. Die Mode-Eigenschaft gibt an, wie das Steuerelement Markup behandelt, das Sie hinzufügen. Ausführliche Informationen finden Sie unter Übersicht über das Literal-Webserversteuerelement.

    Das folgende Beispiel stellt eine einfache Webseite dar, die zur Laufzeit eine Headline anzeigt. Der Textkörper der Seite, einschließlich Literal-Steuerelement, könnte wie folgt aussehen.

    <body>
      <form >
        <h1><asp:Literal id="Headline" runat=server 
          mode="PassThrough"/></h1>
      </form>
    </body>
    
  3. Fügen Sie der Seite Code hinzu, um die Text-Eigenschaft des Steuerelements zur Laufzeit festzulegen.

    Im nachstehenden Beispiel wird gezeigt, wie Sie Text und Codierung des Literal-Steuerelements programmgesteuert festlegen. Die Seite enthält Optionsfelder, mit denen der Benutzer zwischen codiertem und Pass-Through-Text wählen kann.

    Hinweis:

    Wenn Sie die Text-Eigenschaft auf Text festlegen, der aus einer nicht vertrauenswürdigen Quelle stammt, legen Sie die Mode-Eigenschaft auf Encode fest. Dadurch ist das entsprechende Markup nicht ausführbar.

    <%@ Page Language="VB" %>
    <script >
    Protected Sub Page_Load(ByVal sender As Object, _
        ByVal e As System.EventArgs)
        Literal1.Text = "This <b>text</b> is inserted dynamically."
        If radioEncode.Checked = True Then
            Literal1.Mode = LiteralMode.Encode
        ElseIf radioPassthrough.Checked = True Then
            Literal1.Mode = LiteralMode.PassThrough
        End If
    End Sub
    </script>
    
    <html>
    <head ></head>
    <body>
    <form id="form1" >
    <div>
        <br />
        <asp:RadioButton 
            ID="radioEncode" 
    
            GroupName="LiteralMode" 
            Checked="True" 
            Text="Encode" 
            AutoPostBack="True" />
        <br />
        <asp:RadioButton 
            ID="radioPassthrough" 
    
            GroupName="LiteralMode" 
            Text="PassThrough" 
            AutoPostBack="True" />
        <br />
        <br />
        <asp:Literal ID="Literal1" ></asp:Literal>
    </div>
    </form>
    </body>
    </html>
    
    <%@ Page Language="C#" %>
    <script >
        protected void Page_Load(object sender, EventArgs e)
        {
            Literal1.Text = "This <b>text</b> is inserted dynamically.";
            if (radioEncode.Checked == true)
            {
                Literal1.Mode = LiteralMode.Encode;
            }
            if(radioPassthrough.Checked == true)
            {
                Literal1.Mode = LiteralMode.PassThrough;
            }
        }
    </script>
    </script>
    
    <html>
    <head ></head>
    <body>
        <form id="form1" >
        <div>
            <br />
            <asp:RadioButton 
                ID="radioEncode" 
    
                GroupName="LiteralMode" 
                Checked="True" 
                Text="Encode" 
                AutoPostBack="True" />
            <br />
            <asp:RadioButton 
                ID="radioPassthrough" 
    
                GroupName="LiteralMode" 
                Text="PassThrough" 
                AutoPostBack="True" />
            <br />
            <br />
            <asp:Literal ID="Literal1" ></asp:Literal>&nbsp;</div>
        </form>
    </body>
    </html>
    

Siehe auch

Referenz

Übersicht über das Literal-Webserversteuerelement