Le contrôle calendrier est l'un des contrôles fournis avec .net. Il possède des fonctions puissantes et est utilisé dans de nombreux développements de projets. Il est encore plus essentiel pour les systèmes de blog. Même le bon jade doit encore être sculpté. Afin de le rendre plus beau et plus pratique, nous devons également y procéder à un développement secondaire.
Créez un nouveau contrôle utilisateur et introduisez le contrôle calendrier. La première étape consiste à définir l'apparence en fonction de vos besoins, il vous suffit d'apporter quelques ajustements à ses propriétés associées. L'image ci-dessous est l'interface après l'avoir ajustée
Les paramètres de propriété sont les suivants :
<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" >
La deuxième étape consiste à ajuster les fonctions internes. se concentre principalement sur les deux suivants sur le traitement des événements.
PreRender : se produit lorsque le contrôle serveur est sur le point d'être rendu dans son objet Page contenant.
DayRender : se produit lorsque chaque jour est créé pour le contrôle Calendar dans la hiérarchie des contrôles.
Définissez d'abord trois variables entières et un tableau entier
private int[] arrCurrentDays,arrPreDays,arrNextDays; //三个变量分别是当前月,前一月,和下一个月 private int intCurrentMonth,intPreMonth,intNextMonth; //三个整型数组存放相对月份写有blog的日期 protected System.Web.UI.WebControls.Calendar Calendar1; //这个就是我们的日历控件了
2. Ci-dessous, je vais donner respectivement le code source de ces deux événements, et expliquer le fonctions qu'il implémente ci-dessous. Si vous ne comprenez pas, vous pouvez d'abord lire l'explication suivante
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; }
Le code ci-dessus modifie l'affichage du nom de la semaine. Il vous suffit de modifier la valeur du tableau de caractères pour modifier l'affichage du nom.
DayRender
private void Calendar1_DayRender(object sender, System.Web.UI.WebControls.DayRenderEventArgs e) { //该控件在创建每一天时发生。 CalendarDay d = ((DayRenderEventArgs)e).Day; TableCell c = ((DayRenderEventArgs)e).Cell; }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!