📄 calendar.ascx.cs
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
//说明
//***************************************************************************
//设置日期格式可以用:
//ucdate.DateFormat = DateFormatSyle.ShortDate;
//取日期的值可以用:
// Label1.Text = ucdate.selectedDate.ToShortDateString() ;
//**********************************************************************
/// <summary>
/// 日期格式枚举值
/// </summary>
///
public enum DateFormatSyle
{
Default,
ShortDate,
LongDate,
ShortTime,
LongTime,
}
public partial class calendar : System.Web.UI.UserControl
{ ///日期格式枚举属性
private DateFormatSyle dateFormat = DateFormatSyle.Default;
public DateFormatSyle DateFormat
{
get { return dateFormat; }
set { dateFormat = value; }
}
/// <summary>
/// 控件是否选择了值
/// </summary>
public bool HaveValue
{ ///返回控件是否存在值
get { return (tbDate.Text.Length>0 ? true:false);}
}
/// <summary>
/// 控件选择的日期
/// </summary>
public DateTime selectedDate
{
get { return DateTime.Parse(tbDate.Text); }
set
{
switch (dateFormat)
{
case DateFormatSyle.LongDate:
tbDate.Text = value.ToLongDateString(); break;
case DateFormatSyle.LongTime:
tbDate.Text = value.ToLongTimeString(); break;
case DateFormatSyle.ShortDate:
tbDate.Text = value.ToShortDateString(); break;
case DateFormatSyle.ShortTime:
tbDate.Text = value.ToShortTimeString(); break;
default:
tbDate.Text = value.ToString(); break;
}
}
}
/// <summary>
/// 选择日期触发事件
/// </summary>
private event EventHandler clientEvent;
public event EventHandler ClientEvent
{
add { clientEvent += value; }
remove { clientEvent -= value; }
}
protected void Page_Load(object sender, EventArgs e)
{
cDate.SelectedDate = DateTime.Now;
btnSelectDate.Text = "↑";
}
protected void cDate_SelectionChanged(object sender, EventArgs e)
{ ///选择一个日期
switch (dateFormat)
{
case DateFormatSyle.LongDate:
tbDate.Text = cDate.SelectedDate.ToLongDateString(); break;
case DateFormatSyle.LongTime:
tbDate.Text = cDate.SelectedDate.ToLongTimeString(); break;
case DateFormatSyle.ShortDate:
tbDate.Text = cDate.SelectedDate.ToShortDateString(); break;
case DateFormatSyle.ShortTime:
tbDate.Text = cDate.SelectedDate.ToShortTimeString(); break;
default:
tbDate.Text = cDate.SelectedDate.ToString(); break;
}
cDate.Visible = !cDate.Visible;
}
private void SetButtonText()
{ ///设置按钮的图标
if (cDate.Visible == true) { btnSelectDate.Text = "↓"; }
else { btnSelectDate.Text = "↑"; }
}
protected void btnSelectDate_Click(object sender, EventArgs e)
{ ///设置日期控件的可见性
cDate.Visible = !cDate.Visible;
if (HaveValue == true)
{
cDate.VisibleDate = selectedDate;///设置可见的日期
}
SetButtonText();
if (clientEvent != null)
{
clientEvent(this, EventArgs.Empty);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -