⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 literal.cs

📁 不错的人事管理系统
💻 CS
字号:
/*
导读:

	从最简单的开始!

	这是System.Web.UI.WebControls命名空间中最简单的Control。
	Literal在Text属性中使用ViewSate来保存数据,这也是所有的ServerControl
	实现保存状态的方法。所以我把这个类当作最先向大家介绍。
	重载Render来产生客户端代码。要注意Literal是从System.Web.UI.Control中继承
	产生的,而不是从System.Web.UI.WebControls.WebControl。

	Literal类似于Label,但是Lable可以指定Style。
	Label是从System.Web.UI.WebControls.WebControl中继承
	下来的,而Literal是直接从Control中继承下来的。
*/

using System;

namespace System.Web.UI.WebControls
{
	[System.Web.UI.DataBindingHandler("System.Web.UI.Design.TextDataBindingHandler, " +
		"System.Design, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
	[System.ComponentModel.DefaultProperty("Text")]
	[System.Web.UI.ControlBuilder(typeof(System.Web.UI.WebControls.LiteralControlBuilder))]
	public class Literal : System.Web.UI.Control
	{
		public Literal() : base()
		{
		}

		//重载AddParsedSubObject方法
		//如果不重载这个方法,这个方法会自动把LiternalControl对象添加到Control的ControlCollection中
		protected override void AddParsedSubObject(object obj)
		{
			if(obj is System.Web.UI.LiteralControl)
			{
				this.Text = ((System.Web.UI.LiteralControl)obj).Text;
			}
			else
			{

				throw new System.Web.HttpException
				(
					System.Web.HttpRuntime.FormatResourceString
					(
						"Cannot_Have_Children_Of_Type",
						"Literal",
						obj.GetType().Name.ToString()
					)
				);
			}
		}

		//重载CreateControlCollection,返回EmptyControlCollection。
		//EmptyControlCollection是只读,不能添加和删除
		protected override System.Web.UI.ControlCollection CreateControlCollection()
		{
			return new System.Web.UI.EmptyControlCollection(this);
		}

		//重载Render方法来产生客户端代码
		protected override void Render(System.Web.UI.HtmlTextWriter output)
		{
			string V_0;
			V_0 = this.Text;

			if(V_0.Length != 0)
			{
				output.Write(V_0);
			}
		}

		[System.ComponentModel.Bindable(true)]
		//[System.Web.WebCategory("Appearance")]
		[System.ComponentModel.DefaultValue("")]
		//[System.Web.WebSysDescription("Literal_Text")]
		//使用ViewSate来保存Text的状态
		public string Text
		{
			get
			{
				string V_0;
				V_0 = (string)this.ViewState["Text"];
				if(V_0 == null)
				{
					return(string.Empty);
				}
				return(V_0);
			}
			set
			{
				this.ViewState["Text"] = value;
			}
		}
	}							  
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -