Calendar.DayRender Calendar.DayRender Calendar.DayRender Calendar.DayRender Event

Definizione

Viene generato quando vengono creati i giorni nella gerarchia relativa al controllo Calendar.Occurs when each day is created in the control hierarchy for the Calendar control.

public:
 event System::Web::UI::WebControls::DayRenderEventHandler ^ DayRender;
public event System.Web.UI.WebControls.DayRenderEventHandler DayRender;
member this.DayRender : System.Web.UI.WebControls.DayRenderEventHandler 
Public Custom Event DayRender As DayRenderEventHandler 

Esempi

Nell'esempio di codice riportato di seguito viene illustrato come specificare e scrivere il DayRender codice di un gestore per l'evento per rendere giallo il colore di sfondo per i giorni del mese visualizzato.The following code example demonstrates how to specify and code a handler for the DayRender event to make the background color yellow for the days in the displayed month. Viene inoltre illustrato come personalizzare il contenuto di una cella aggiungendo un System.Web.UI.LiteralControl controllo alla cella.It also demonstrates how to customize the contents of a cell by adding a System.Web.UI.LiteralControl control to the cell.

<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>DayRender Event Example</title>
<script language="C#" runat="server">
   
      void DayRender(Object source, DayRenderEventArgs e) 
      {

         // Change the background color of the days in the month
         // to yellow.
         if (!e.Day.IsOtherMonth && !e.Day.IsWeekend)
            e.Cell.BackColor=System.Drawing.Color.Yellow;

         // Add custom text to cell in the Calendar control.
         if (e.Day.Date.Day == 18)
            e.Cell.Controls.Add(new LiteralControl("<br />Holiday"));

      }

   </script>
 
</head>
 
<body>
 
   <form id="form1" runat="server">

      <h3>DayRender Event Example</h3>
 
      <asp:Calendar id="calendar1" 
                    OnDayRender="DayRender"
                    runat="server">

         <WeekendDayStyle BackColor="gray">
         </WeekendDayStyle>

      </asp:Calendar>
                   
   </form>
          
</body>
</html>
   
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>DayRender Event Example</title>
<script language="VB" runat="server">
   
        Sub DayRender(source As Object, e As DayRenderEventArgs)
            
            ' Change the background color of the days in the month
            ' to yellow.
            If Not e.Day.IsOtherMonth And Not e.Day.IsWeekend Then
                e.Cell.BackColor = System.Drawing.Color.Yellow
            End If 
            ' Add custom text to cell in the Calendar control.
            If e.Day.Date.Day = 18 Then
                e.Cell.Controls.Add(New LiteralControl(ChrW(60) & "br" & ChrW(62) & "Holiday"))
            End If 
        End Sub 'DayRender 

   </script>
 
</head>
 
<body>
 
   <form id="form1" runat="server">

      <h3>DayRender Event Example</h3>
 
      <asp:Calendar id="calendar1" 
                    OnDayRender="DayRender"
                    runat="server">

         <WeekendDayStyle BackColor="gray">
         </WeekendDayStyle>

      </asp:Calendar>
                   
   </form>
          
</body>
</html>
   
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Calendar DayRender Example</title>
<script runat="server">
   
      void DayRender(Object sender, DayRenderEventArgs e) 
      {

         // Change the background color of the days in the month
         // to yellow.
         if (!e.Day.IsOtherMonth && !e.Day.IsWeekend)
         {
            e.Cell.BackColor=System.Drawing.Color.Yellow;
         }

         // Add custom text to cell in the Calendar control.
         if (e.Day.Date.Day == 18)
         {
            e.Cell.Controls.Add(new LiteralControl("<br />Holiday"));
         }

      }

      void Page_Load(Object sender, EventArgs e)
      {

         // Manually register the event-handling method for the DayRender  
         // event of the Calendar control.
         Calendar1.DayRender += new DayRenderEventHandler(this.DayRender);

      }

   </script>
 
</head>
 
<body>
 
   <form id="form1" runat="server">

      <h3>Calendar DayRender Example</h3>
 
      <asp:Calendar id="Calendar1" 
                    runat="server">

         <WeekendDayStyle BackColor="gray">
         </WeekendDayStyle>

      </asp:Calendar>
                   
   </form>
          
</body>
</html>
   
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Calendar DayRender Example</title>
<script runat="server">
   
      Sub DayRender(sender as Object, e As DayRenderEventArgs) 

         ' Change the background color of the days in the month
         ' to yellow.
         If (Not e.Day.IsOtherMonth) And (Not e.Day.IsWeekend) Then
        
            e.Cell.BackColor=System.Drawing.Color.Yellow
         
         End If

         ' Add custom text to cell in the Calendar control.
         If e.Day.Date.Day = 18 Then
         
            e.Cell.Controls.Add(New LiteralControl("<br />Holiday"))
         
         End If

      End Sub

      Sub Page_Load(sender As Object, e As EventArgs)

         ' Manually register the event-handling method for the DayRender  
         ' event of the Calendar control.
         AddHandler Calendar1.DayRender, AddressOf DayRender

      End Sub

   </script>
 
</head>
 
<body>
 
   <form id="form1" runat="server">

      <h3>Calendar DayRender Example</h3>
 
      <asp:Calendar id="Calendar1" 
                    runat="server">

         <WeekendDayStyle BackColor="gray">
         </WeekendDayStyle>

      </asp:Calendar>
                   
   </form>
          
</body>
</html>
   

Commenti

Questo evento viene generato quando viene creato ogni giorno nella gerarchia dei controlli per il Calendar controllo.This event is raised when each day is created in the control hierarchy for the Calendar control.

Anche se data binding non è supportato per Calendar il controllo, è possibile modificare il contenuto e la formattazione delle singole celle di data.Although data binding is not supported for the Calendar control, it is possible to modify the content and formatting of the individual date cells. Prima che Calendar il controllo venga visualizzato nella pagina Web, vengono creati e assemblati i componenti che costituiscono il controllo.Before the Calendar control is displayed on the Web page, it creates and assembles the components that make up the control. L' DayRender evento viene generato quando viene creata ogni cella data Calendar nel controllo.The DayRender event is raised when each date cell in the Calendar control is created. È possibile controllare il contenuto e la formattazione di una cella di data quando viene creata fornendo il codice nel gestore eventi per l' DayRender evento.You can control the contents and formatting of a date cell when it is created by providing code in the event handler for the DayRender event. Per ulteriori informazioni sulla personalizzazione del contenuto di una cella di data, vedere OnDayRender.For more information on customizing the contents of a date cell, see OnDayRender.

Nota

Poiché l' DayRender evento viene generato durante il Calendar rendering del controllo, non è possibile aggiungere un controllo che può generare anche LinkButtonun evento, ad esempio.Because the DayRender event is raised while the Calendar control is being rendered, you cannot add a control that can also raise an event, such as LinkButton. È possibile aggiungere solo controlli statici, ad esempio System.Web.UI.LiteralControl Image, Label, e HyperLink.You can only add static controls, such as System.Web.UI.LiteralControl, Label, Image, and HyperLink.

Per ulteriori informazioni sulla gestione degli eventi, consultare gestione e generazione di eventi.For more information about handling events, see Handling and Raising Events.

Si applica a

Vedi anche