آموزش ASP.Net > کنترل های استاندارد ASP.Net > کنترل Calendar
نمایش دکمه های ماه در کنترل تقویم Calendar

Skip Navigation Links.

مقدمه :

به صورت پیش فرض ، کنترل تقویم Calendar ، ماه ( Monnth ) تاریخ جاری سرور را نمایش می دهد . کاربران می توانند با کلیک بر روی دکمه های ماه در نوار عنوان کنترل تقویم ، به تاریخ ماه بعد یا قبل حرکت نمایند . شما می توانید تعیین کنید آیا این لینک نمایش داده شوند یا خیر و همچنین تنظطیمات RunTime دیگری را بر این کنترل اعمال کنید .

نحوه فعال کردن یا غیر فعال نمودن دکمه های پیمایش ماه :

برای نمایش یا عدم نمایش دکمه های پیمایش ماه در کنترل تقویم ، مقدار خاصیت ShowNextPrevMonth را به true یا false تنظیم نمایید . مقدار پیش فرش این خاصیت true بوده و لینک های پیمایش ماه در کنترل تقویم نمایش داده می شود .
مثال : در مثال زیر دو کنترل تقویم را قرار داه ایم ، که در هر کدام تنظیم متفاوتی را برای خاصیت ShowNextPrevMonth تعیین کرده ایم . به تفاوت دو کنترل دقت نمایید :

Example
< asp:Calendar ID="Calendar1" runat="server" >   < /asp:Calendar > < asp:Calendar ID="Calendar2" runat="server" ShowNextPrevMonth="false" >   < /asp:Calendar > کد
خروجی

حرکت بین ماه ها در کنترل تقویم به صورت programmatically :

برای تغییر ماه نمایش داده شده در کنترل تقویم به صورت RunTime و برنامه ریزی شده ، مقدار خاصیت VisibleDate ، آن را برابر با یک روز در آن ماه ، قرار دهید .
تاریخ این روز می تواند هر کدام از روزهای ماه باشد ، ولی معمولا روز اول ماه تعیین می شود . در مثال زیر ، کدی نوشته ایم که ماه کنترل تقویم مورد نظر را به تاریخ تعیین شده ، انتقال می دهد :

VB کد   Calendar1.VisibleDate = New Date(2000, 2, 1)
C# کد   Calendar1.VisibleDate = new DateTime (2000, 2, 1) ;

نکته : اگر قابلیت پیمایش ماه در کنترل تقویم فعال باشد ، کنترل در هنگام حرکت کاربر بین ماه ها ، یک رویداد خاص را اجرا می کند . از این رویداد می توانید برای اجرای کدهای مورد نظر خود استفاده نمایید .
برای مثال فرض کنید که دو کنترل تقویم بر روی صفحه دارید . می توانید کدی بنویسید که همواره کار کند تا کاربر نتواند در کنترل تقویم دوم ، تاریخی ما قبل کنترل تقویم اول انتخاب نمایید .

نحوه پاسخ به رویداد تغییر تاریخ در کنترل تقویم Calendar :

رویداد VisibleMonthChanged ، رویدادی است که در هنگام حرکت کاربر بین ماه ها در کنترل تقویم ، رخ می دهد . کدهای مورد نظر خود را ، جهت اجرا در این رویداد می توانید بنویسید .  نحوه استفاده از این رویداد را در مثال زیر نشان  داده ایم .
این رویداد می تواند از طریق MonthChangedEventArgs یک مقدار را به عنوان پارامتر دریافت کند . این مقدار می تواند یکی از دو مورد زیر باشد :

  • PreviousDate : این خاصیت نام ماهی که کنترل قبل از کلیک کاربر بر روی دکمه های پیمایش ماه ، نشان می داده است ، را بر می گرداند .
    می توانید با مقایسه این متغیر و ماه جاری که کاربر انتخاب کرده ( خاصیت VisibleDate ) متوجه جهت حرکت کاربر به سمت ماه بعد یا قبل شوید .
  • NewDate : این پارامتر نام ماه جدیدی که کاربر به آن حرکت کرده است ، را در خود نگهداری می کند . خاصیت VisibleDate قبل از اینکه رویداد VisibleMonthChanged رخ دهد ، به این مقدار تغییر می یابد .

مثال عملی : در مثال زیر ، کدی طراحی کرده ایم که نسبت به تغییر ماه در کنترل Clanedar1 واکنش نشان می دهد . این کد ماه انتخاب شده توسط کاربر را از طریق پارامتر مربوط دریافت کرده و سپس روزهای 10 دهم و 25 ام ماه را به صورت های لایت نمایش می دهد :

VB کد Public Sub Calendar1_VisibleMonthChanged(ByVal sender As Object, _
    ByVal e As System.Web.UI.WebControls.MonthChangedEventArgs) _
    Handles Calendar1.VisibleMonthChanged

   ' Select the 10th and 25th of each month.
    Calendar1.SelectedDates.Clear()
    Calendar1.SelectedDates.Add(New DateTime(e.NewDate.Year, e.NewDate.Month, 10))
    Calendar1.SelectedDates.Add(New DateTime(e.NewDate.Year, e.NewDate.Month, 25))

End Sub
C# کد private void Calendar1_VisibleMonthChanged (object sender, System.Web.UI.WebControls.MonthChangedEventArgs e)
  {
      // Select the 10th and 25th of each month.
      Calendar1.SelectedDates.Clear();
      Calendar1.SelectedDates.Add(new DateTime(e.NewDate.Year, e.NewDate.Month, 10));
      Calendar1.SelectedDates.Add(new DateTime(e.NewDate.Year, e.NewDate.Month, 25));

   }


Example
< asp:Calendar ID="Calendar1"   runat="server" >   < /asp:Calendar > کد
<August 2026>
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345
خروجی

Skip Navigation Links.

راجع این مطلب سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...         >>>>>  ورود به انجمن تخصصی


نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1 حمایت نمایید :

آیا مطالب این صفحه برای شما مناسب و مفید بوده است :

نام :               
آدرس Email :  

نظر شما :  

سوال امنیتی : پایتخت ایران ؟  
حمایت از سایت Developer1