Day minder page component : Basics « Custom Controls « ASP.NET Tutorial






<%@ Page Language="VB" debug="true" %>
<%@ Register TagPrefix="Java2sASP" TagName="Planner" src="Control.ascx" %>

<html><body>
   <form runat="server">
      <Java2sASP:Planner id="Planner" runat="server" /> 
   </form>
</body></html>

File: Control.ascx

<script language="VB" runat="server">
   Public sub Page_Load(Sender as Object, e as EventArgs)
      if not Page.IsPostBack then
         Session.Clear
         Calendar1.SelectedDate = DateTime.Now
         DayLabel.Text = Calendar1.SelectedDate. _
            ToString("dddd, MMMM dd yyyy")
      end if
   End Sub
   
   Public sub SelectionChanged(Sender as Object, e as EventArgs)
      DayLabel.Text = Calendar1.SelectedDate. _
         ToString("dddd, MMMM dd yyyy")
      
      if not (Session(Calendar1.SelectedDate.ToString) is nothing)
         dim l as Label = new label
         l.Text = Session(Calendar1.SelectedDate.ToString)
         DayPanel.Controls.Add(l)
      end if
   End Sub
   
   Public sub NoteChanged(Sender as Object, e as EventArgs)
      if Sender.text <> "" then
         dim l as Label = New Label
         l.text = "<li>" & Sender.Text & "</li>"
      
         DayPanel.Controls.Add(l)
         Session(Calendar1.SelectedDate.ToString) = l.text
         NoteBox.Text = ""
      end if
   End Sub
</script>

<table width="100%">
<tr>
   <td width="50%" valign="top">
      <font face="arial">
         <asp:Label id="DayLabel" 
            runat="server" 
            Height="25px" 
            Width="100%"
            BackColor="blue" 
            ForeColor="white"
            Font-Bold="true"/>
         <br>
         <asp:Panel id="DayPanel" 
            runat="server"
            backcolor="#ffffff" 
            Height="225px" >
            
            <asp:Textbox id="NoteBox" 
               runat="server"
               OnTextChanged="NoteChanged"
               TextMode="Multiline"
               Rows=5 
               Width="100%" 
               AutoPostBack="true" />
         </asp:Panel>
      </font>
   </td>
   <td width="50%" rowspan="2" valign="top">
      <asp:Calendar id="Calendar1" 
         runat="server"
         OnSelectionChanged="SelectionChanged"
         Cellpadding="5" 
         Cellspacing="5"
         DayHeaderStyle-Font-Bold="True"
         DayNameFormat="Short"
         Font-Name="Arial" 
         Font-Size="12px"
         height="250px"
         NextPrevFormat="ShortMonth"
         NextPrevStyle-ForeColor="white"
         SelectedDayStyle-BackColor="#ffcc66"
         SelectedDayStyle-Font-Bold="True"
         SelectionMode="DayWeekMonth"
         SelectorStyle-BackColor="#99ccff"
         SelectorStyle-ForeColor="navy"
         SelectorStyle-Font-Size="9px"
         ShowTitle="true"
         TitleStyle-BackColor="#ddaa66"
         TitleStyle-ForeColor="white"
         TitleStyle-Font-Bold="True"
         TodayDayStyle-Font-Bold="True" />
   </td>
</tr>
</table>








14.2.Basics
14.2.1.User control with property
14.2.2.ASP controls in user control
14.2.3.A Web user control file template
14.2.4.Adding controls to the Web user control
14.2.5.Creating control events in a user control (C#)
14.2.6.Creating control events in a user control (VB)
14.2.7.Exposing user control properties (C#)
14.2.8.Exposing user control properties (VB)
14.2.9.Populating user control properties from the host Web page (C#)
14.2.10.Populating user control properties from the host Web page (VB)
14.2.11.Component level variable
14.2.12.Action from user-defined control
14.2.13.Pass parameter from user-defined controls to host page
14.2.14.Calculator component based on page component (VB.net)
14.2.15.Day minder page component
14.2.16.Use custom control in Assembly
14.2.17.Building a simple User control that randomly displays one image
14.2.18.Registering User Controls in the Web Configuration File
14.2.19.Building Fully Rendered Controls