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

📄 repeatinfo.cs

📁 不错的人事管理系统
💻 CS
字号:
using System;

namespace System.Web.UI.WebControls
{
	/// <summary>
	/// Summary description for RepeatInfo.
	/// </summary>
	public class RepeatInfo
	{
		private bool outerTableImplied;
		private int repeatColumns;
		private RepeatDirection repeatDirection;
		private RepeatLayout repeatLayout;

		public RepeatInfo() : base() 
		{
			this.repeatDirection = RepeatDirection.Vertical;
			this.repeatLayout = RepeatLayout.Table;
			this.repeatColumns = 0;
			this.outerTableImplied = false;
		}

		private void RenderHorizontalRepeater(
			System.Web.UI.HtmlTextWriter writer, 
			IRepeatInfoUser user, Style controlStyle, WebControl baseControl) 
		{
			int local0;
			int local1;
			int local2;
			WebControl local3;
			bool local4;
			bool local5;
			int local6;
			Style local7;
			int local8;
			Style local9;
			Style local10;
			int local11;
			Style local12;
			RepeatLayout local13;

			local0 = user.RepeatedItemCount;
			local1 = this.repeatColumns;
			local2 = 0;
			if (local1 == 0)
				local1 = local0;
			local3 = null;
			local4 = false;
			local13 = this.repeatLayout;
			switch (local13) 
			{
				case RepeatLayout.Table:
					local3 = new Table();
					local4 = true;
					break;
				case RepeatLayout.Flow:
					local3 = new WebControl(System.Web.UI.HtmlTextWriterTag.Span);
					break;
			}
			local5 = user.HasSeparators;
			local3.ID = baseControl.ClientID;
			local3.CopyBaseAttributes(baseControl);
			local3.ApplyStyle(controlStyle);
			local3.RenderBeginTag(writer);
			if (user.HasHeader) 
			{
				if (local4) 
				{
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
					if (local1 != 1 || local5) 
					{
						local6 = local1;
						if (local5)
							local6 += local1;
						writer.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Colspan, local6.ToString(System.Globalization.NumberFormatInfo.InvariantInfo));
					}
					local7 = user.GetItemStyle(0, -1);
					if (local7 != null)
						local7.AddAttributesToRender(writer);
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
				}
				user.RenderItem(ListItemType.Header, -1, this, writer);
				if (local4) 
				{
					writer.RenderEndTag();
					writer.RenderEndTag();
				}
				else 		if (local1 < local0)
					writer.WriteFullBeginTag("br");
			}
			local8 = 0;
			while (local8 < local0) 
			{
				if (local4 && local2 == 0)
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
				if (local4) 
				{
					local9 = user.GetItemStyle(ListItemType.Item, local8);
					if (local9 != null)
						local9.AddAttributesToRender(writer);
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
				}
				user.RenderItem(ListItemType.Item, local8, this, writer);
				if (local4)
					writer.RenderEndTag();
				if (local5 && local8 != local0 - 1) 
				{
					if (local4) 
					{
						local10 = user.GetItemStyle(ListItemType.Separator, local8);
						if (local10 != null)
							local10.AddAttributesToRender(writer);
						writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
					}
					user.RenderItem(ListItemType.Separator, local8, this, writer);
					if (local4)
						writer.RenderEndTag();
				}
				local2++;
				if (local2 == local1 || local8 == local0 - 1) 
				{
					if (local4)
						writer.RenderEndTag();
					else 			if (local1 < local0)
						writer.WriteFullBeginTag("br");
					local2 = 0;
				}
				local8++;
			}
			if (user.HasFooter) 
			{
				if (local4) 
				{
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
					if (local1 != 1 || local5) 
					{
						local11 = local1;
						if (local5)
							local11 += local1;
						writer.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Colspan, local11.ToString(System.Globalization.NumberFormatInfo.InvariantInfo));
					}
					local12 = user.GetItemStyle(ListItemType.Footer, -1);
					if (local12 != null)
						local12.AddAttributesToRender(writer);
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
				}
				user.RenderItem(ListItemType.Footer, -1, this, writer);
				if (local4) 
				{
					writer.RenderEndTag();
					writer.RenderEndTag();
				}
			}
			local3.RenderEndTag(writer);
		}

		public void RenderRepeater(System.Web.UI.HtmlTextWriter writer, 
			IRepeatInfoUser user, 
			Style controlStyle, 
			WebControl baseControl) 
		{
			if (this.repeatDirection == RepeatDirection.Vertical) 
			{
				this.RenderVerticalRepeater(writer, user, controlStyle, baseControl);
				return;
			}

			this.RenderHorizontalRepeater(writer, user, controlStyle, baseControl);
		}

		private void RenderVerticalRepeater(System.Web.UI.HtmlTextWriter writer, 
			IRepeatInfoUser user, 
			Style controlStyle, 
			WebControl baseControl) 
		{
			int local0;
			int local1;
			int local2;
			WebControl local3;
			bool local4;
			bool local5;
			int local6;
			Style local7;
			int local8;
			int local9;
			int local10;
			Style local11;
			Style local12;
			int local13;
			Style local14;
			RepeatLayout local15;

			local0 = user.RepeatedItemCount;
			if (this.repeatColumns == 0 || this.repeatColumns == 1) 
			{
				local1 = 1;
				local2 = local0;
			}
			else 
			{
				local1 = this.repeatColumns;
				local2 = local0 + this.repeatColumns - 1 / this.repeatColumns;
				if (local2 == 0 && local0 != 0) 
				{
					local2 = 1;
					local1 = local0;
				}
			}
			local3 = null;
			local4 = false;
			if (!(this.outerTableImplied)) 
			{
				local15 = this.repeatLayout;
				switch (local15) 
				{
					case RepeatLayout.Table:
						local3 = new Table();
						local4 = true;
						break;
					case RepeatLayout.Flow:
						local3 = new WebControl(System.Web.UI.HtmlTextWriterTag.Span);
						break;
				}
			}
			local5 = user.HasSeparators;
			if (local3 != null) 
			{
				local3.ID = baseControl.ClientID;
				local3.CopyBaseAttributes(baseControl);
				local3.ApplyStyle(controlStyle);
				local3.RenderBeginTag(writer);
			}
			if (user.HasHeader) 
			{
				if (local4) 
				{
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
					if (local1 != 1) 
					{
						local6 = local1;
						if (local5)
							local6 += local1;
						writer.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Colspan, local6.ToString(System.Globalization.NumberFormatInfo.InvariantInfo));
					}
					local7 = user.GetItemStyle(ListItemType.Header, -1);
					if (local7 != null)
						local7.AddAttributesToRender(writer);
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
				}
				user.RenderItem(ListItemType.Header, -1, this, writer);
				if (local4) 
				{
					writer.RenderEndTag();
					writer.RenderEndTag();
				}
				else 		if (!(this.outerTableImplied))
					writer.WriteFullBeginTag("br");
			}
			local8 = 0;
			while (local8 < local2) 
			{
				if (local4)
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
				local9 = 0;
				while (local9 < local1) 
				{
					local10 = local8 + local9 * local2;
					if (local10 < local0) 
					{
						if (local4) 
						{
							local11 = user.GetItemStyle(ListItemType.Item, local10);
							if (local11 != null)
								local11.AddAttributesToRender(writer);
							writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
						}
						user.RenderItem(ListItemType.Item, local10, this, writer);
						if (local4)
							writer.RenderEndTag();
						if (local5 && local10 != local0 - 1) 
						{
							if (local1 == 1) 
							{
								if (local4) 
								{
									writer.RenderEndTag();
									writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
								}
								else
									writer.WriteFullBeginTag("br");
							}
							if (local4) 
							{
								local12 = user.GetItemStyle(ListItemType.Separator, local10);
								if (local12 != null)
									local12.AddAttributesToRender(writer);
								writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
							}
							if (local10 < local0)
								user.RenderItem(ListItemType.Separator, local10, this, writer);
							if (local4)
								writer.RenderEndTag();
						}
					}
					local9++;
				}
				if (local4)
					writer.RenderEndTag();
				else 		if (local8 != local2 - 1 || user.HasFooter && !(this.outerTableImplied))
					writer.WriteFullBeginTag("br");
				local8++;
			}
			if (user.HasFooter) 
			{
				if (local4) 
				{
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
					if (local1 != 1) 
					{
						local13 = local1;
						if (local5)
							local13 += local1;
						writer.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Colspan, local13.ToString(System.Globalization.NumberFormatInfo.InvariantInfo));
					}
					local14 = user.GetItemStyle(ListItemType.Footer, -1);
					if (local14 != null)
						local14.AddAttributesToRender(writer);
					writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
				}
				user.RenderItem(ListItemType.Footer, -1, this, writer);
				if (local4) 
				{
					writer.RenderEndTag();
					writer.RenderEndTag();
				}
			}
			if (local3 != null)
				local3.RenderEndTag(writer);
		}

		
		public bool OuterTableImplied
		{
			get
			{
				return this.outerTableImplied;
			}
			set
			{
				this.outerTableImplied = value;
			}
		}

		public int RepeatColumns
		{
			get
			{
				return this.repeatColumns;
			}
			set
			{
				this.repeatColumns = value;
			}
		}

		public RepeatDirection RepeatDirection
		{
			get
			{
				return this.repeatDirection;
			}
			set
			{
				this.repeatDirection = value;
			}
		}

		public RepeatLayout RepeatLayout
		{
			get
			{
				return this.repeatLayout;
			}
			set
			{
				this.repeatLayout = value;
			}
		}

	}
}

⌨️ 快捷键说明

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