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

📄 calendar.ascx.cs

📁 个人博客。。毕业设计````用来做毕业设计`
💻 CS
字号:
namespace WesternByte.MyBlog.Controls.Blog
{
	using System;
	using System.Data;
	using System.Drawing;
	using System.Globalization;
	using System.Threading;
	using System.Web.UI;
	using System.Web.UI.WebControls;
	using System.Web.UI.HtmlControls;
	using WesternByte.MyBlog.Core.Essay;

	/// <summary>
	///		Calendar 的摘要说明。
	/// </summary>
	public class Calendar : System.Web.UI.UserControl
	{
		protected System.Web.UI.WebControls.Calendar entryCal;
		private int[] arrCurrentDays,arrPreDays,arrNextDays; //三个变量分别是当前月,前一月,和下一个月 
		private int intCurrentMonth,intPreMonth,intNextMonth; //三个整型数存放相对月份写有blog的日期 
		protected EssayDAO eDAO = new EssayDAO();

		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
		}

		private void entryCal_PreRender(object sender, System.EventArgs e) 
		{ 
			Thread threadCurrent = Thread.CurrentThread; 
			CultureInfo ciNew = (CultureInfo)threadCurrent.CurrentCulture.Clone(); 
			ciNew.DateTimeFormat.DayNames = new string[]{"日","一","二","三","四","五","六"}; 
			ciNew.DateTimeFormat.FirstDayOfWeek = DayOfWeek.Sunday; 
			threadCurrent.CurrentCulture = ciNew; 
		}

		private void entryCal_DayRender(object sender, System.Web.UI.WebControls.DayRenderEventArgs e) 
		{ 
			//该控件在创建每一天时发生。 
			int BlogID = Convert.ToInt32(Page.Request.QueryString["BlogID"]);
			CalendarDay d = ((DayRenderEventArgs)e).Day; 
			TableCell c = ((DayRenderEventArgs)e).Cell; 
   
			// 初始化当前月有Blog的日期数组 
			if( intPreMonth == 0 )
			{ 
				intPreMonth = d.Date.Month; // 注意:日历控件初始化时我们得到的第一个月并不是当前月,而是前一个月的月份 
				intCurrentMonth = intPreMonth+1;
				if (intCurrentMonth>12) intCurrentMonth=1 ; 
				intNextMonth = intCurrentMonth+1; 
				if (intNextMonth >12) intNextMonth =1; 
				arrPreDays = eDAO.LoadDayArray(BlogID,d.Date.Year,intPreMonth); //得到前一个月有blog的日期数组 
				arrCurrentDays = eDAO.LoadDayArray(BlogID,d.Date.Year,intCurrentMonth) ;//得到当月有blog的日期数组 
				arrNextDays = eDAO.LoadDayArray(BlogID,d.Date.Year,intNextMonth) ;//得到下个月有blog的日期数组 
			} 
   
			int j=0; 
			if( d.Date.Month.Equals(intPreMonth) ) 
			{ 
				while( ! arrPreDays[j].Equals(0) ) 
				{ 
					if(d.Date.Day.Equals(arrPreDays[j])) 
					{ 
						c.Controls.Clear(); 
						c.Controls.Add(new LiteralControl("<a href=Essay.aspx?BlogID=" + BlogID + "&year="+d.Date.Year+"&month="+ 
							d.Date.Month+"&day="+d.Date.Day+" style=\"text-decoration:underline\"><b>"+d.Date.Day+"</b></a>")); 
					} 
					j++; 
				} 
			} 
			else if( d.Date.Month.Equals(intCurrentMonth) ) 
			{ 
				while( ! arrCurrentDays[j].Equals(0) ) 
				{ 
					if(d.Date.Day.Equals(arrCurrentDays[j])) 
					{ 
						c.Controls.Clear(); 
						c.Controls.Add(new LiteralControl("<a href=Essay.aspx?BlogID=" + BlogID + "&year="+d.Date.Year+"&month="+ 
							d.Date.Month+"&day="+d.Date.Day+" style=\"text-decoration:underline\"><b>"+d.Date.Day+"</b></a>")); 
					} 
					j++; 
				} 
			} 
			else if( d.Date.Month.Equals(intNextMonth) ) 
			{ 
				while( ! arrNextDays[j].Equals(0) ) 
				{ 
					if(d.Date.Day.Equals(arrNextDays[j])) 
					{ 
						c.Controls.Clear(); 
						c.Controls.Add(new LiteralControl("<a href=Essay.aspx?BlogID=" + BlogID + "&year="+d.Date.Year+"&month="+ 
							d.Date.Month+"&day="+d.Date.Day+" style=\"text-decoration:underline\"><b>"+d.Date.Day+"</b></a>")); 
					} 
					j++; 
				}
			} 
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		///		设计器支持所需的方法 - 不要使用代码编辑器
		///		修改此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{
			this.entryCal.PreRender += new System.EventHandler(this.entryCal_PreRender);
			this.entryCal.DayRender += new DayRenderEventHandler(this.entryCal_DayRender);
			this.Load += new System.EventHandler(this.Page_Load);
		}
		#endregion
	}
}

⌨️ 快捷键说明

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