toolbar1.cs

来自「该项目中对 SQLHelper 类进行了简单封装」· CS 代码 · 共 172 行

CS
172
字号
/* 
 * Toolbar1.cs @Microsoft Visual Studio 2008 <.NET Framework 3.5>
 * AfritXia
 * 2007-05-31
 * 
 * Copyright(c) http://www.AfritXia.NET/
 * 
 */

using System;
using System.Collections.Specialized;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;

namespace NET.AfritXia.Components.Web.TextPane
{
	/// <summary>
	/// 控件工具条1
	/// </summary>
	internal class Toolbar1 : ToolbarBase, IPostBackDataHandler, INamingContainer
	{
		// 字体名称下拉列表
		private ToolbarDropDownList m_drpFont = null;
		// 应用当前选定字体名称按钮
		private ToolbarImageButton m_btnApplyFont = null;
		// 字体大小下拉列表
		private ToolbarDropDownList m_drpSize = null;
		// 应用当前选定字体大小按钮
		private ToolbarImageButton m_btnApplySize = null;
		// 应用当前选定的背景颜色
		private ToolbarImageButton m_btnApplyBackColor = null;
		// 背景颜色下拉列表
		private ColorDropDownList m_drpBackColor = null;
		// 应用当前选定的背景颜色
		private ToolbarImageButton m_btnApplyForeColor = null;
		// 背景颜色下拉列表
		private ColorDropDownList m_drpForeColor = null;

		// 回发字体名称值
		private string m_postBackFontValue = null;
		// 回发字体大小值
		private string m_postBackSizeValue = null;
		// 回发背景值
		private string m_postBackBgColorValue = null;
		// 回发前景值
		private string m_postBackFgColorValue = null;

		#region 类 Toolbar1 构造器
		/// <summary>
		/// 类 Toolbar1 默认构造器
		/// </summary>
		public Toolbar1()
			: base()
		{
		}
		#endregion

		/// <summary>
		/// 创建控件的子控件
		/// </summary>
		protected override void OnInit(EventArgs e)
		{
			base.OnInit(e);

			// 初始化字体名称下拉列表框
			this.m_drpFont = ToolbarDropDownList.Create("CMD_FONT");
			// 加入首选项
			this.m_drpFont.Items.Add(new ListItem("Font -"));
			// 添加控件到工具条
			this.AddControl(this.m_drpFont);

			// 加入字体名称
			foreach (string fontName in Toolbar1.FONT_NAMES)
				this.m_drpFont.Items.Add(new ListItem(fontName, fontName));

			// 初始化字体按钮
			this.m_btnApplyFont = ToolbarImageButton.Create("Apply_Small", "CMD_FONT");
			this.AddControl(this.m_btnApplyFont);

			// 初始化字体大小下拉列表框
			this.m_drpSize = ToolbarDropDownList.Create("CMD_SIZE");
			// 加入首选项
			this.m_drpSize.Items.Add(new ListItem("Size -"));
			// 添加控件到工具条
			this.AddControl(this.m_drpSize);

			// 加入字体大小选项
			for (int i = 1; i <= 7; i++)
				this.m_drpSize.Items.Add(new ListItem(i.ToString(), i.ToString()));

			// 初始化字体大小按钮
			this.m_btnApplySize = ToolbarImageButton.Create("Apply_Small", "CMD_SIZE");
			this.AddControl(this.m_btnApplySize);

			// 背景色按钮
			this.m_btnApplyBackColor = ToolbarImageButton.Create("BackColor", "CMD_BACK_COLOR");
			this.AddControl(this.m_btnApplyBackColor);

			// 背景色下拉列表框
			this.m_drpBackColor = ColorDropDownList.Create("BackColor -", "CMD_BACK_COLOR");
			this.AddControl(this.m_drpBackColor);

			// 前景色按钮
			this.m_btnApplyForeColor = ToolbarImageButton.Create("ForeColor", "CMD_FORE_COLOR");
			this.AddControl(this.m_btnApplyForeColor);

			// 背景色下拉列表框
			this.m_drpForeColor = ColorDropDownList.Create("ForeColor -", "CMD_FORE_COLOR");
			this.AddControl(this.m_drpForeColor);
		}

		/// <summary>
		/// 在绘制控件之前,注册该控件为回发控件
		/// </summary>
		/// <param name="e"></param>
		protected override void OnPreRender(EventArgs e)
		{
			base.OnPreRender(e);

			// 注册该控件为回发控件
			this.Page.RegisterRequiresPostBack(this);

			// 设置字体名称值
			this.m_drpFont.SelectedValue = this.m_postBackFontValue;
			// 设置字体大小值
			this.m_drpSize.SelectedValue = this.m_postBackSizeValue;
			// 设置背景值
			this.m_drpBackColor.SelectedValue = this.m_postBackBgColorValue;
			// 设置前景值
			this.m_drpForeColor.SelectedValue = this.m_postBackFgColorValue;
		}

		#region FONT_NAMES 字体名称集合
		private static readonly string[] FONT_NAMES = new string[] {
			"Arial",
			"Bookman Old Style",
			"Courier", "Courier New",
			"Fixedsys",
			"Verdana",
			"仿宋_GB2312",
			"宋体",
			"幼圆",
			"新宋体",
			"方正姚体", "方正舒体",
			"楷体_GB2312",
			"隶书",
			"黑体"
		};
		#endregion

		#region IPostBackDataHandler 成员
		public bool LoadPostData(string postDataKey, NameValueCollection postCollection)
		{
			// 获取回发字体名称
			this.m_postBackFontValue = postCollection[this.m_drpFont.UniqueID];
			// 获取回发字体大小
			this.m_postBackSizeValue = postCollection[this.m_drpSize.UniqueID];
			// 获取背景
			this.m_postBackBgColorValue = postCollection[this.m_drpBackColor.UniqueID];
			// 获取前景
			this.m_postBackFgColorValue = postCollection[this.m_drpForeColor.UniqueID];

			return false;
		}

		public void RaisePostDataChangedEvent()
		{
		}
		#endregion
	}
}

⌨️ 快捷键说明

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