LiteralMode Enum

Definition

Specifies how the content in a Literal control is rendered.

public enum class LiteralMode
public enum LiteralMode
type LiteralMode = 
Public Enum LiteralMode
Inheritance
LiteralMode

Fields

Encode 2

The literal control's contents are HTML-encoded.

PassThrough 1

The literal control's contents are not modified.

Transform 0

The literal control's unsupported markup-language elements are removed. If the literal control is rendered on a browser that supports HTML or XHTML, the control's contents are not modified.

Examples

The following example demonstrates how to set the Literal.Mode property. It is initially set to Encode in the declarative syntax for the control. After the page loads, the user can click a button to set the Mode property to PassThrough. This causes the contents of the Literal.Text property to render differently.

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Literal.Mode Property Example</title>
<script runat="Server">
       
        Sub PassThroughButton_Click(ByVal sender As Object, ByVal e As EventArgs)
   
            Literal1.Mode = LiteralMode.PassThrough
            
            Label1.Text = "The contents of the Literal.Text property " + _
                          "passed through to the browser:"
           
        End Sub
     
   </script>
</head>
<body>
    <form id="Form1" runat="server">
        
        <h3>Literal.Mode Property Example</h3>        
                             
        <asp:Label ID="Label1"
            Text="The HTML-encoded contents of the Literal.Text property:"
            runat="server">     
        </asp:Label><br /><br />
        
        <asp:Literal ID="Literal1"
            Mode="Encode"
            Text= "<b>bold</b><br/><i>italic</i><br/>"          
            runat="server">
        </asp:Literal>
       
        <hr />
       
        <asp:Button ID="PassThroughButton"
            Text="Pass Through Mode"
            OnClick="PassThroughButton_Click"
            runat="server">
        </asp:Button>
         
    </form>
</body>
</html>

Remarks

The LiteralMode enumeration represents the modes that you can specify for how the content in a Literal control is rendered. The Literal.Mode property uses these enumeration values to set the behavior of the contents of the Literal.Text property.

If you specify PassThrough, the entire contents of the Literal.Text property are passed to the device or browser without any modifications. For example, if the Literal.Text property contains an <hr> tag, it is sent to all devices and browsers regardless of whether it is supported.

If you specify Encode, the contents for the Text property are converted into an HTML-encoded string before rendering. For example, if the Literal.Text property contains an <hr> tag, it will be converted to &lt;hr&gt; and sent to the device or browser.

If you specify Transform, the rendering behavior of the Literal.Text property depends on the type of markup being rendered. When the Literal control is rendered for a device or browser that supports HTML or XHTML, specifying Transform produces the same behavior as specifying PassThrough. All markup tags and elements for the Literal.Text property are rendered for the requesting browser.

When the Literal control is rendered for a markup language other than HTML or XHTML, such as WML or cHTML, you can use the Transform value to remove unsupported markup elements. In this case, any markup-language elements of the Literal.Text property that are not supported in the targeted markup language are not rendered for the control. For example, if the Literal.Text property contains an <hr> tag, the tag is removed before the content is sent to a WML device. If an unsupported tag contains content, only the tag is removed and the content is sent to the device or browser. For example, if the Literal.Text property contains the content <XYZ>Test</XYZ>, the <XYZ> and </XYZ> tags are removed while the text Test is sent to the device or browser.

Applies to

See also