看了看教程后,觉得,虽然被人说成是鸡肋,可我觉得这其实是一个很有用的控件。之前给公司做过小的新闻系统,就使用的LABEL控件,其中的样式一个都显示不了,打开源码知道LABEL是将内容放在<span></span>中,造成无法显示。Literal控件正好解决了这个问题,使之可以将HTML代码写入并呈现出来。留个备份,以后会对我的程序有帮助。

下面是从MSDN上摘抄下来的说明,它有一个Mode属性,看看他们的作用是什么吧。


使用 Mode 属性指定如何呈现 Literal 控件的内容。使用一个 LiteralMode 枚举值设置此属性。下表列出了可能的值。

说明

PassThrough

未修改控件的内容。

Encode

控件的内容转换为 HTML 编码的字符串。

Transform

从控件的内容中移除不受支持的标记语言元素。如果 Literal 控件在支持 HTML 或 XHTML 的浏览器上呈现,则不会修改该控件的内容。

如果指定 PassThrough,则 Text属性的全部内容不经任何修改即传递给设备或浏览器。例如,如果 Literal 控件的 Text 属性包含 <hr> 标记,则无论该标记是否受支持,都将传递给所有设备和浏览器。

如果指定 Encode,则 Text 属性的内容在呈现前会转换为 HTML 编码字符串。例如,如果 Literal 控件的 Text 属性包含 <hr> 标记,则将该标记转换为 &lt;Hr&gt; 并发送到设备或浏览器。

如果指定 Transform,则 Text 属性的呈现行为取决于要呈现的标记的类型。如果 Literal 控件在支持 HTML 或 XHTML 的设备或浏览器上呈现,指定 Transform 会产生与指定 PassThrough 相同的行为。Text 属性的所有标记和元素都呈现到请求浏览器。

使用 HTML 或 XHTML 之外的标记语言(如 WML 或 cHTML)呈现 Literal 控件时,可以使用 Transform 值移除不受支持的标记元素。在此情况下,控件 Text 属性的所有不受目标标记语言支持的标记语言元素都不会呈现。例如,如果 Literal 控件的 Text 属性包含 <hr> 标记,则在将内容发送到 WML 设备前移除该标记。如果不受支持的标记包含内容,则仅移除标记,而将内容发送到设备或浏览器。例如,如果 Text 属性包含内容 <XYZ>Test</XYZ>,则移除 <XYZ></XYZ> 标记,并将文本“Test”发送到设备或浏览器。