欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

literal控件

发布时间:2025/4/14 编程问答 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 literal控件 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

这就是literal控件


用于在网页上呈现可能出现语言标记的文本的解决方案.

此控件有一个叫LiteralMode的枚举属性:Encode,Passthrough,Transform.

Encode属性用于将文本进行HTML编码后原样显示到浏览器上。

Passthrough属性用于将Text属性直接传送给浏览器,不经过任何编码或修改。

Transform属性用于移除不受支持的标记元素,在这种情况下,目标标记语言不支持的所有元素都不会呈现(移除标记,保留内容) 。

注意:

如果显示Literal控件的设备或浏览器支持HTML或XHTML语言,那么passthrough和Transform属性会显示相同的结果。如果显示Literal控件的设备或浏览器并不支持HTML或XHTML,例如手机上的浏览器,那么指定transform值后,literal控件会在显示文本前将不受支持的标记移除,而保留内容。(关于这一点,因为本为没有做过手机开发,所以无法验证)

以下为一个在PC浏览器上的小示例,此例中,指定passthrough或Transform值会显示相同的结果。

 以下为页面代码

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="T_Literal.aspx.cs" Inherits="T_Literal" %>

<!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 runat="server">
    
<title>无标题页</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
        
<asp:RadioButton ID="radioEncode" runat="server" GroupName="LiteralMode" Checked="true" Text=Encode AutoPostBack=true />
        
<asp:RadioButton ID="radioPassthrough" runat="server" GroupName="LiteralMode" Text="Passthrough" AutoPostBack="true" />
        
<asp:RadioButton ID="radioTransform" runat="server" Text="Transform" AutoPostBack="true" GroupName="LiteralMode" /><br /><hr/><br />
        
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
        
</div>
    
</form>
</body>
</html>

 以下为隐藏代码

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class T_Literal : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    {
        Literal1.Text 
= "this <hr><b>text</b><a>aaa</a><ccc> is inserted dynamically";

        
if (radioEncode.Checked)
        {
            Literal1.Mode 
= LiteralMode.Encode;
        }
        
if (radioPassthrough.Checked)
        {
            Literal1.Mode 
= LiteralMode.PassThrough;
        }
        
if (radioTransform.Checked)
        {
            Literal1.Mode 
= LiteralMode.Transform;
        }
    }
}

 

转载于:https://www.cnblogs.com/cykevin/archive/2008/12/08/1350682.html

总结

以上是生活随笔为你收集整理的literal控件的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。