📄 calendar.cs
字号:
// int local7;
// DateTime local8;
// string local9;
// bool local10;
// int local11;
// int local12;
// int local13;
// string local14;
// int local15;
// int local16;
// int local17;
// string local18;
// CalendarDay local19;
// int local20;
// int local21;
// int local22;
// TableItemStyle local23;
// TableCell local24;
// LiteralControl local25;
// TimeSpan local26;
// int local27;
//
// local0 = firstDay;
// local1 = null;
// local3 = this.HasWeekSelectors(selectionMode);
// if (local3)
// {
// local1 = new TableItemStyle();
// local1.Width = System.Web.UI.WebControls.Unit.Percentage(12);
// local1.HorizontalAlign = (HorizontalAlign)2;
// local1.CopyFrom(this.SelectorStyle);
// local2 = System.Web.UI.WebControls.Unit.Percentage(12);
// }
// else
// local2 = System.Web.UI.WebControls.Unit.Percentage(14);
//// local4 = this.threadCalendar as HebrewCalendar <= null;
// if (this.GetType() == typeof(Calendar))
// {
//// goto i-1;
// }
// local5 = true;
// local6 = new TableItemStyle[16];
// local7 = this.GetDefinedStyleMask();
// local8 = this.TodaysDate;
// local9 = this.SelectWeekText;
// if (buttonsActive)
// {
//// goto i-1;
// }
// local10 = false;
// local11 = this.threadCalendar.GetMonth(visibleDate);
// local26 = firstDay.Subtract(Calendar.baseDate);
// local12 = local26.Days;
// local13 = 0;
// while (local13 < 6)
// {
// writer.Write("<tr>");
// if (local3)
// {
// local27 = local12 * 100 + 7;
// local14 = "R" + local27.ToString(CultureInfo.InvariantCulture);
// this.RenderCalendarCell(writer, local1, local9, buttonsActive, local14);
// }
// local15 = 0;
// while (local15 < 7)
// {
// local16 = (int)this.threadCalendar.GetDayOfWeek(local0);
// local17 = this.threadCalendar.GetDayOfMonth(local0);
// if (local17 <= 31 && local4)
// local18 = Calendar.cachedNumbers[local17];
// else
// local18 = local0.ToString("dd");
// if (local16 != 0)
// {
//// goto i-1;
// }
// if (this.selectedDates != null)
// {
//// goto i-1;
// }
//// local19 = new CalendarDay(1, local0.Equals(local8), this.selectedDates.Contains(local0), 0, this.threadCalendar.GetMonth(local0) != local11 , local18);
// local20 = 16;
// if (local19.IsSelected)
// local20 |= 8;
// if (local19.IsOtherMonth)
// local20 |= 2;
// if (local19.IsToday)
// local20 |= 4;
// if (local19.IsWeekend)
// local20 |= 1;
// local21 = local7 & local20;
// local22 = local21 & 15;
// local23 = local6[local22];
// if (local23 == null)
// {
// local23 = new TableItemStyle();
// this.SetDayStyles(local23, local21, local2);
// local6[local22] = local23;
// }
// if (local5)
// {
// local24 = new TableCell();
// local24.ApplyStyle(local23);
// local25 = new LiteralControl(local18);
// local24.Controls.Add(local25);
// local19.IsSelectable = local10;
// this.OnDayRender(local24, local19);
// if (buttonsActive)
// {
//// goto i-1;
// }
//// this.Text = local12.ToString(CultureInfo.InvariantCulture).GetCalendarButtonText(local18, local19.IsSelectable, false, local24.ForeColor);
// local24.RenderControl(writer);
// }
// else
// this.RenderCalendarCell(writer, local23, local18, local10, local12.ToString(CultureInfo.InvariantCulture));
// local0 = this.threadCalendar.AddDays(local0, 1);
// local12++;
// local15++;
// }
// writer.Write("</tr>");
// local13++;
// }
}
private void RenderTitle(HtmlTextWriter writer, DateTime visibleDate, CalendarSelectionMode selectionMode, bool buttonsActive)
{
TableCell local0;
Table local1;
TableItemStyle local2;
NextPrevFormat local3;
TableItemStyle local4;
string local5;
int local6;
DateTime local7;
string local8;
TableItemStyle local9;
string local10;
string local11;
string local12;
int local13;
DateTime local14;
string local15;
TimeSpan local16;
int local17;
TitleFormat local18;
writer.Write("<tr>");
local0 = new TableCell();
local1 = new Table();
if (!(this.HasWeekSelectors(selectionMode)))
{
// goto i-1;
}
// 7.ColumnSpan = 8;
local0.BackColor = Color.Silver;
// local1.GridLines = 0;
local1.Width = System.Web.UI.WebControls.Unit.Percentage(100);
// local1.CellSpacing = 0;
local2 = this.TitleStyle;
this.ApplyTitleStyle(local0, local1, local2);
local0.RenderBeginTag(writer);
local1.RenderBeginTag(writer);
writer.Write("<tr>");
local3 = this.NextPrevFormat;
local4 = new TableItemStyle();
local4.Width = System.Web.UI.WebControls.Unit.Percentage(15);
local4.CopyFrom(this.NextPrevStyle);
if (this.ShowNextPrevMonth)
{
if (local3 == (NextPrevFormat)1 || local3 == (NextPrevFormat)2)
{
local6 = this.threadCalendar.GetMonth(this.threadCalendar.AddMonths(visibleDate, -1));
local5 = this.GetMonthName(local6, local3 == (NextPrevFormat)2);
}
else
local5 = this.PrevMonthText;
local7 = this.threadCalendar.AddMonths(visibleDate, -1);
local16 = local7.Subtract(Calendar.baseDate);
local17 = local16.Days;
local8 = "V" + local17.ToString(CultureInfo.InvariantCulture);
this.RenderCalendarCell(writer, local4, local5, buttonsActive, local8);
}
local9 = new TableItemStyle();
if (local2.HorizontalAlign != 0)
local9.HorizontalAlign = local2.HorizontalAlign;
else
local9.HorizontalAlign = (HorizontalAlign)2;
// local9.Wrap = local2.Wrap;
local9.Width = System.Web.UI.WebControls.Unit.Percentage(70);
local18 = this.TitleFormat;
// switch (local18)
// {
// case 0:
local10 = visibleDate.ToString("MMMM");
goto i2;
// break;
local11 = DateTimeFormatInfo.CurrentInfo.YearMonthPattern;
if (local11.IndexOf(',') >= 0)
local11 = "MMMM yyyy";
local10 = visibleDate.ToString(local11);
i2: this.RenderCalendarCell(writer, local9, local10, false, null);
if (this.ShowNextPrevMonth)
{
local4.HorizontalAlign = (HorizontalAlign)3;
if (local3 == (NextPrevFormat)1 || local3 == (NextPrevFormat)2)
{
local13 = this.threadCalendar.GetMonth(this.threadCalendar.AddMonths(visibleDate, 1));
local12 = this.GetMonthName(local13, local3 == (NextPrevFormat)2);
}
else
local12 = this.NextMonthText;
local14 = this.threadCalendar.AddMonths(visibleDate, 1);
local16 = local14.Subtract(Calendar.baseDate);
local17 = local16.Days;
local15 = "V" + local17.ToString(CultureInfo.InvariantCulture);
this.RenderCalendarCell(writer, local4, local12, buttonsActive, local15);
}
writer.Write("</tr>");
local1.RenderEndTag(writer);
local0.RenderEndTag(writer);
writer.Write("</tr>");
// }
}
protected virtual object SaveViewState()
{
// object[] local0;
// int local1;
//
// if (this.SelectedDates.Count > 0)
// this.ViewState.set_Item("SD", this.dateList);
// local0 = new Object[10];
// local0[0] = this.SaveViewState();
// if (this.titleStyle == null)
// {
// goto i-1;
// }
// 1[null] = this.titleStyle.SaveViewState();
// if (this.nextPrevStyle == null)
// {
// goto i-1;
// }
// 2[null] = this.nextPrevStyle.SaveViewState();
// if (this.dayStyle == null)
// {
// goto i-1;
// }
//
// 3[null] = this.dayStyle.SaveViewState();
// if (this.dayHeaderStyle == null)
// {
// goto i-1;
// }
// 4[null] = this.dayHeaderStyle.SaveViewState();
// if (this.todayDayStyle == null)
// {
// goto i-1;
// }
// 5[null] = this.todayDayStyle.SaveViewState();
// if (this.weekendDayStyle == null)
// {
// goto i-1;
// }
// 6[null] = this.weekendDayStyle.SaveViewState();
// if (this.otherMonthDayStyle == null)
// {
// goto i-1;
// }
// 7[null] = this.otherMonthDayStyle.SaveViewState();
// if (this.selectedDayStyle == null)
// {
// goto i-1;
// }
// 8[null] = this.selectedDayStyle.SaveViewState();
// if (this.selectorStyle == null)
// {
// goto i-1;
// }
// 9[null] = this.selectorStyle.SaveViewState();
// local1 = 0;
// while (local1 < (int) local0.Length)
// {
// if (local0[local1])
// return local0;
// local1++;
// }
return null;
}
private void SelectRange(DateTime dateFrom, DateTime dateTo)
{
TimeSpan local0;
// local0 = System.DateTime.op_Subtraction(dateTo, dateFrom);
// if (this.SelectedDates.Count != local0.Days + 1 || (this.SelectedDates[0]!= dateFrom) || (this.SelectedDates[this.SelectedDates.Count - 1]!= dateTo))
// {
// this.SelectedDates.SelectRange(dateFrom, dateTo);
// this.OnSelectionChanged();
// }
}
private void SetDayStyles(TableItemStyle style, int styleMask, Unit defaultWidth)
{
style.Width = defaultWidth;
style.HorizontalAlign = (HorizontalAlign)2;
if ((styleMask & 16) != 0)
style.CopyFrom(this.DayStyle);
if ((styleMask & 1) != 0)
style.CopyFrom(this.WeekendDayStyle);
if ((styleMask & 2) != 0)
style.CopyFrom(this.OtherMonthDayStyle);
if ((styleMask & 4) != 0)
style.CopyFrom(this.TodayDayStyle);
if ((styleMask & 8) != 0)
{
style.ForeColor = Color.White;
style.BackColor = Color.Silver;
style.CopyFrom(this.SelectedDayStyle);
}
}
void System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(string eventArgument)
{
DateTime local0;
int local1;
int local2;
int local3;
int local4;
DateTime local5;
int local6;
DateTime local7;
if (System.String.Compare(eventArgument, 0, "V", 0, "V".Length) == 0)
{
local0 = this.VisibleDate;
if (local0.Equals(System.DateTime.MinValue))
local0 = this.TodaysDate;
local1 = System.Int32.Parse(eventArgument.Substring("V".Length));
// this.VisibleDate = <{ class ILEngineer::Ops::MSIL::LoadStaticFieldAddress }>.AddDays((double) local1);
this.OnVisibleMonthChanged(this.VisibleDate, local0);
return;
}
if (System.String.Compare(eventArgument, 0, "R", 0, "R".Length) == 0)
{
local2 = System.Int32.Parse(eventArgument.Substring("R".Length));
local3 = local2 / 100;
local4 = local2 % 100;
if (local4 < 1)
{
local4 = 100 + local4;
local3 = local3 - 1;
}
// local5 = <{ class ILEngineer::Ops::MSIL::LoadStaticFieldAddress }>.AddDays((double) local3);
// this.SelectRange(local5, local5.AddDays((double) local4 - 1));
return;
}
local6 = System.Int32.Parse(eventArgument);
// local7 = <{ class ILEngineer::Ops::MSIL::LoadStaticFieldAddress }>.AddDays((double) local6);
// this.SelectRange(local7, local7);
}
protected virtual void TrackViewState()
{
this.TrackViewState();
if (this.titleStyle != null)
this.titleStyle.TrackViewState();
if (this.nextPrevStyle != null)
this.nextPrevStyle.TrackViewState();
if (this.dayStyle != null)
this.dayStyle.TrackViewState();
if (this.dayHeaderStyle != null)
this.dayHeaderStyle.TrackViewState();
if (this.todayDayStyle != null)
this.todayDayStyle.TrackViewState();
if (this.weekendDayStyle != null)
this.weekendDayStyle.TrackViewState();
if (this.otherMonthDayStyle != null)
this.otherMonthDayStyle.TrackViewState();
if (this.selectedDayStyle != null)
this.selectedDayStyle.TrackViewState();
if (this.selectorStyle != null)
this.selectorStyle.TrackViewState();
}
public event DayRenderEventHandler DayRender
{
add
{
this.Events.AddHandler(Calendar.EventDayRender, value);
}
remove
{
this.Events.RemoveHandler(Calendar.EventDayRender, value);
}
}
public event EventHandler SelectionChanged
{
add
{
this.Events.AddHandler(Calendar.EventSelectionChanged, value);
}
remove
{
this.Events.RemoveHandler(Calendar.EventSelectionChanged, value);
}
}
public event MonthChangedEventHandler VisibleMonthChanged
{
add
{
this.Events.AddHandler(Calendar.EventVisibleMonthChanged, value);
}
remove
{
this.Events.RemoveHandler(Calendar.EventVisibleMonthChanged, value);
}
}
public int CellPadding
{
get
{
object local0;
local0 = this.ViewState["CellPadding"];
if (local0 != null)
return (Int32) local0;
return 2;
}
set
{
if (value < -1)
throw new ArgumentOutOfRangeException("value");
this.ViewState["CellPadding"]= value;
}
}
public int CellSpacing
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -