2009-07-20 7 views
0

Je veux faire une page ASP.NET simple qui dessine des mois à partir d'un calendrier et met en évidence les dates données. (Je suis pas à la recherche d'un sélecteur de date.) Qu'est-ce que j'ai une liste de DateTime les valeurs et j'ai besoin de les afficher d'une manière agréable. Étant donné que je suis un débutant total avec ASP, plus simple vraiment est mieux. (Je préfère ne pas, je suis prêt à pirater quelque chose avec StringBuilder et <table> si c'est plus facile).Contrôle de dessin de calendrier ASP.NET

p.s. Je n'ai pas de budget, donc les contrôles non-libres ne seront utiles qu'à d'autres lecteurs.

Répondre

1

Vous pouvez le faire avec le contrôle standard calendrier et utiliser l'événement DayRender pour formater les jours individuels. J'ai fait quelque chose de similaire à ma première application ASP.Net (un planificateur d'événements de base) où les dates spéciales étaient stockées dans une base de données.

<asp:Calendar id = "objCalendar" runat = "server" 
      onDayRender = "objCalendar_DayRender" 
      Borderstyle = solid 
      > 

<% 
    public void objCalendar_DayRender(object sender, DayRenderEventArgs e) 
    { 

     CalendarDay d = ((DayRenderEventArgs)e).Day; 

     string strCurrrentDayDisplay = GetDaySchedule(d.Date.ToShortDateString()); 

     TableCell c = ((DayRenderEventArgs)e).Cell; 
     if (d.IsOtherMonth) 
     { 
      c.Controls.Clear(); 
     } 
     else 
     { 
      try 
      { 

       c.Controls.Add(new LiteralControl("<br>" + strCurrrentDayDisplay)); 
      } 
      catch (Exception err) 
      { 
       Response.Write (err.ToString()); 
      } 
     } 
     d.IsSelectable = false; 
    } 
%> 
+0

Cela semble être utile ... – BCS

+0

Cela semble fonctionner. Je dois le battre en soumission (et en apprendre plus sur ASP.NET dans le processus), mais je ne vois pas de barrage routier à venir. – BCS

+0

Je voudrais supprimer le try/catch; le bloc qu'il entoure ne devrait jamais manquer ... – pbz

0

Une option côté client serait le jQuery calendar plugin

+0

C'est un peu plus compliqué que ce que je cherche. Cela pourrait marcher, mais 99% de cela n'est pas nécessaire pour mon cas. – BCS

0

Il peut être trop tard pour ce projet, mais il semble que BaseCalendar fonctionnerait.

Questions connexes