カレンダー コントロールは .net に付属するコントロールの 1 つであり、多くのプロジェクト開発で使用されており、ブログ システムにとってはさらに重要です。たとえ良い翡翠であっても、より美しく実用的なものにするためには、さらに二次開発を行う必要があります。
新しいユーザー コントロールを作成し、カレンダー コントロールを組み込みます。最初のステップは、ニーズに基づいて外観を設定することです。必要なのは、関連するプロパティをいくつか調整することだけです。下の写真は調整後のインターフェースです
属性の設定は次のとおりです:
<asp:calendar id="Calendar1" CellPadding="2" Width="160px" TitleStyle-BackColor="#000000" BorderColor="#aaaaaa" DayHeaderStyle-BackColor="#5e715e" OtherMonthDayStyle-ForeColor="#cccccc" DayNameFormat="Full" runat="server" TitleStyle-ForeColor="#ffffff" NextPrevStyle-ForeColor="#ffffff" CellSpacing="1" WeekendDayStyle-BackColor="#eeeeee" DayHeaderStyle-ForeColor="#ffffff" SelectionMode="None" TodayDayStyle-BorderColor="#5e715e" TodayDayStyle-BorderWidth="1" TodayDayStyle-Font-Bold="true" TodayDayStyle-ForeColor="#5e715e" >
2番目のステップは、主に次の2つのイベントの処理に焦点を当てています。
PreRender: サーバー コントロールが、それを含む Page オブジェクトにレンダリングされる直前に発生します。
DayRender: コントロール階層内の Calendar コントロールに対して毎日が作成されるときに発生します。
最初に 3 つの整数変数と整数 arrays を定義します
private int[] arrCurrentDays,arrPreDays,arrNextDays; //三个变量分别是当前月,前一月,和下一个月 private int intCurrentMonth,intPreMonth,intNextMonth; //三个整型数组存放相对月份写有blog的日期 protected System.Web.UI.WebControls.Calendar Calendar1; //这个就是我们的日历控件了
2. 以下にこれら 2 つのイベントのソース コードをそれぞれ示し、それが実装する関数について説明します。理解できない場合は、以下を読んでください。まず、以下の手順を実行してください
PreRender
private void Calendar1_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; }
上記のコードは、週名の表示を変更します。名前の表示を変更するには、文字配列の値を変更するだけです。
DayRender
private void Calendar1_DayRender(object sender, System.Web.UI.WebControls.DayRenderEventArgs e) { //该控件在创建每一天时发生。 CalendarDay d = ((DayRenderEventArgs)e).Day; TableCell c = ((DayRenderEventArgs)e).Cell; }
以上がブログにカレンダーを実装するチュートリアルの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。