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

📄 recordbar.cs

📁 《Visual Basic案例开发》一书的源代码
💻 CS
📖 第 1 页 / 共 3 页
字号:
using System;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.ComponentModel;

namespace _36Hang.Web.UI.WebControls
{
	[DefaultProperty("Title"), ToolboxData("<{0}:RecordBar runat=server></{0}:RecordBar>")]
	public class RecordBar : WebControl, INamingContainer, IPostBackEventHandler
	{
		private ImageClickEventHandler _ImageClickEventHandler;
		private RecordBarItems _Items;
		private RecordBarHeads _Heads;
		private RecordBarCommands _Commands;
		public RecordBarModeFilename ModeFilename;

		private HtmlTableCell _HtmlTableCell;

		public event EventHandler Select;
		public event EventHandler Click;

		public RecordBar() : base()
		{
			_Items = new RecordBarItems();
			_Heads = new RecordBarHeads();
			_Commands = new RecordBarCommands();
			_HtmlTableCell = new HtmlTableCell();
			_ImageClickEventHandler = new ImageClickEventHandler(this.ServerClicked);

			ModeFilename = new RecordBarModeFilename();

			RecordBarCommand objRecordBarCommand;

			objRecordBarCommand = new RecordBarCommand();
			objRecordBarCommand.ID = "First";
			objRecordBarCommand.Filename = "Images/RecordBar/First.gif";
			_Commands.Add(objRecordBarCommand);

			objRecordBarCommand = new RecordBarCommand();
			objRecordBarCommand.ID = "Previous";
			objRecordBarCommand.Filename = "Images/RecordBar/Previous.gif";
			_Commands.Add(objRecordBarCommand);

			objRecordBarCommand = new RecordBarCommand();
			objRecordBarCommand.ID = "Next";
			objRecordBarCommand.Filename = "Images/RecordBar/Next.gif";
			_Commands.Add(objRecordBarCommand);

			objRecordBarCommand = new RecordBarCommand();
			objRecordBarCommand.ID = "Last";
			objRecordBarCommand.Filename = "Images/RecordBar/Last.gif";
			_Commands.Add(objRecordBarCommand);
		}

		public string Pathname
		{
			get { if(ViewState["Pathname"] == null) return ""; else return (string)ViewState["Pathname"]; }
			set { ViewState["Pathname"] = value; }
		}

		public int Velocity
		{
			get { if(ViewState["Velocity"] == null) return 2; else return (int)ViewState["Velocity"]; }
			set { ViewState["Velocity"] = value; }
		}

		public string Expanded
		{
			get { if(ViewState["Expanded"] == null) return this.Pathname + "Images/RecordBar/Expanded.gif"; else return (string)ViewState["Expanded"]; }
			set { ViewState["Expanded"] = value; }
		}

		public string Closed
		{
			get { if(ViewState["Closed"] == null) return this.Pathname + "Images/RecordBar/Closed.gif"; else return (string)ViewState["Closed"]; }
			set { ViewState["Closed"] = value; }
		}

		public string Title
		{
			get { if(ViewState["Title"] == null) return "记录栏"; else return (string)ViewState["Title"]; }
			set { ViewState["Title"] = value; }
		}

		public int Version
		{
			get { if(ViewState["Version"] == null) return 6; else return (int)ViewState["Version"]; }
			set { ViewState["Version"] = value; }
		}

		public int Index
		{
			get { if(ViewState["Index"] == null) return 0; else return (int)ViewState["Index"]; }
			set { ViewState["Index"] = value; }
		}

		public int Current
		{
			get { if(ViewState["Current"] == null) return 0; else return (int)ViewState["Current"]; }
			set { ViewState["Current"] = value; }
		}

		public int Length
		{
			get { if(ViewState["Length"] == null) return 10; else return (int)ViewState["Length"]; }
			set { ViewState["Length"] = value; }
		}

		public int Count
		{
			get { if(ViewState["Count"] == null) return 1; else return (int)ViewState["Count"]; }
			set { ViewState["Count"] = value; }
		}

		public string Command
		{
			get
			{
				if(ViewState["Command"] == null)
				{
					if(this.Count <= this.Length) return "";
					if(this.Count > this.Length && this.Current == (this.Count + this.Length - 1) / this.Length) return "First,Previous";
					if(this.Count > this.Length && this.Current == 1) return "Next,Last";
					return "First,Previous,Next,Last";
				}
				else
				{
					return (string)ViewState["Command"];
				}
			}
			set { ViewState["Command"] = value; }
		}

		public RecordBarMode Mode
		{
			get { if(ViewState["Mode"] == null) return RecordBarMode.Default; else return (RecordBarMode)ViewState["Mode"]; }
			set { ViewState["Mode"] = value; }
		}

		public RecordBarItems Items
		{
			get { return this._Items; }
			set { this._Items = value; }
		}

		public RecordBarHeads Heads
		{
			get { return this._Heads; }
			set { this._Heads = value; }
		}

		public void Expand()
		{
			base.Page.RegisterStartupScript("_" + this.ID + "_Expand","<script language = \"javascript\"> _" + this.ID + "_Initialize(); _" + this.ID + "_Div.style.setAttribute(\"display\",\"none\"); _" + this.ID + "_Click(); </script>");
		}

		public void Initialize()
		{
			base.Page.RegisterStartupScript("_" + this.ID + "_Initialize","<script language = \"javascript\"> _" + this.ID + "_Initialize(); </script>");
		}

		public void Refresh()
		{
			this.EnsureChildControls();

			_HtmlTableCell.InnerHtml = "";
			SetStruct();
			SetControl();
		}

		protected virtual void OnSelect(EventArgs e,string eventArgument)
		{
			for(int i=0; i<_Items.Count; i++)
			{
				if(_Items[i].ID == eventArgument) this.Index = i;
			}

			if (Select != null)
			{
				Select(_Items[this.Index],e);
			}
		}

		protected virtual void OnClick(EventArgs e,string eventArgument)
		{
			if (Click != null)
			{
				for(int i=0; i<_Commands.Count; i++)
				{
					if(_Commands[i].ID == eventArgument)
					{

⌨️ 快捷键说明

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