This documentation is archived and is not being maintained.

DayRenderEventArgs.Cell Property

Gets the TableCell object that represents the cell being rendered in the Calendar control.

[Visual Basic]
Public ReadOnly Property Cell As TableCell
[C#]
public TableCell Cell {get;}
[C++]
public: __property TableCell* get_Cell();
[JScript]
public function get Cell() : TableCell;

Property Value

The TableCell object that represents the cell being rendered in the Calendar control.

Remarks

Use the Cell property to programmatically control the cell being rendered in the Calendar control.

You can customize the contents of a cell by dynamically adding controls to the Control.Controls collection of the Cell property.

Note   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. You can only add static controls, such as LiteralControl, Label, Image, and HyperLink.

Example

[Visual Basic, C#] The following example demonstrates how to use the Cell property to programmatically change the background color of the days in the displayed month to yellow. It also demonstrates how to customize the contents of a cell by adding a System.Web.UI.LiteralControl to the Control.Controls collection of the Cell property.

[Visual Basic] 
<%@ Page Language="VB" AutoEventWireup="True" %>

<html>
<head>

   <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("<br>" & "Birthday"))
        End If 
    End Sub 'DayRender
  </script>
 
</head>
 
<body>
 
   <form runat="server">

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

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

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

[C#] 
<%@ Page Language="C#" AutoEventWireup="True" %>

<html>
<head>

   <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>Birthday"));

      }

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

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

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

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

[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family

See Also

DayRenderEventArgs Class | DayRenderEventArgs Members | System.Web.UI.WebControls Namespace | TableCell | CalendarDay | Calendar | DayRender

Show: