Sintassi dichiarativa per il controllo server Web Calendar

Aggiornamento: novembre 2007

Visualizza un calendario, composto da un solo mese, che consente all'utente di selezionare le date e spostarsi al mese successivo o a quello precedente.

<asp:Calendar
    AccessKey="string"
    BackColor="color name|#dddddd"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    Caption="string"
    CaptionAlign="NotSet|Top|Bottom|Left|Right"
    CellPadding="integer"
    CellSpacing="integer"
    CssClass="string"
    DayNameFormat="Full|Short|FirstLetter|FirstTwoLetters|Shortest"
    Enabled="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    FirstDayOfWeek="Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|
        Saturday|Default"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
                Large|X-Large|XX-Large"
        Font-Strikeout="True|False"
    Font-Underline="True|False"
    ForeColor="color name|#dddddd"
    Height="size"
    ID="string"
    NextMonthText="string"
    NextPrevFormat="CustomText|ShortMonth|FullMonth"
    OnDataBinding="DataBinding event handler"
    OnDayRender="DayRender event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnSelectionChanged="SelectionChanged event handler"
    OnUnload="Unload event handler"
    OnVisibleMonthChanged="VisibleMonthChanged event handler"
    PrevMonthText="string"
    runat="server"
    SelectedDate="string"
    SelectionMode="None|Day|DayWeek|DayWeekMonth"
    SelectMonthText="string"
    SelectWeekText="string"
    ShowDayHeader="True|False"
    ShowGridLines="True|False"
    ShowNextPrevMonth="True|False"
    ShowTitle="True|False"
    SkinID="string"
    Style="string"
    TabIndex="integer"
    TitleFormat="Month|MonthYear"
    ToolTip="string"
    UseAccessibleHeader="True|False"
    Visible="True|False"
    VisibleDate="string"
    Width="size"
>
        <DayHeaderStyle/>
        <DayStyle/>
        <NextPrevStyle/>
        <OtherMonthDayStyle/>
        <SelectedDayStyle/>
        <SelectorStyle/>
        <TitleStyle/>
        <TodayDayStyle/>
        <WeekendDayStyle/>
</asp:Calendar>

Note

Il controllo Calendar viene utilizzato per visualizzare un calendario, composto da un solo mese, che consente all'utente di selezionare le date e spostarsi ai mesi successivi o precedenti.

Se si imposta la proprietà SelectionMode, è possibile specificare se l'utente può selezionare un singolo giorno, una settimana o un mese. In alternativa, è possibile disattivare completamente la selezione della data.

È possibile personalizzare l'aspetto del controllo Calendar impostando le proprietà di stile per le diverse parti che lo costituiscono. Nella tabella che segue sono elencate le diverse proprietà di stile per il controllo Calendar.

Oggetto di stile

Descrizione

Classe di stile

DayHeaderStyle

Stile della sezione del calendario in cui sono visualizzati i nomi dei giorni della settimana.

TableItemStyle

DayStyle

Stile dei singoli giorni nel mese visualizzato.

Nota

I fine settimana, la data corrente e il giorno selezionato possono avere stili diversi, se si impostano le rispettive proprietà WeekendDayStyle, TodayDayStyle e SelectedDayStyle.

TableItemStyle

NextPrevStyle

Stile delle sezioni a sinistra e a destra della barra del titolo in cui si trovano i controlli LinkButton per lo spostamento tra i mesi.

TableItemStyle

OtherMonthDayStyle

Stile dei giorni del mese precedente e successivo presenti nella vista del mese corrente.

TableItemStyle

SelectedDayStyle

Stile della data selezionata.

Nota

Se la proprietà non è impostata, viene usato lo stile specificato dalla proprietà DayStyle per visualizzare la data selezionata.

TableItemStyle

SelectorStyle

Stile della colonna a sinistra del controllo Calendar che contiene i collegamenti per selezionare una settimana o l'intero mese.

TableItemStyle

TitleStyle

Stile della barra del titolo nella parte superiore del calendario che contiene il nome del mese e i collegamenti per lo spostamento tra i mesi.

Nota

Se è impostato lo stile NextPrevStyle, quest'ultimo eseguirà l'override dello stile dei controlli di spostamento al mese precedente e successivo posizionati agli estremi della barra del titolo.

TableItemStyle

TodayDayStyle

Stile della data corrente.

Nota

Se la proprietà non è impostata, viene utilizzato lo stile specificato dalla proprietà DayStyle per visualizzare la data corrente.

TableItemStyle

WeekendDayStyle

Stile dei giorni del fine settimana.

Nota

Se la proprietà non è impostata, viene utilizzato lo stile specificato dalla proprietà DayStyle per visualizzare le date dei fine settimana.

TableItemStyle

È inoltre possibile controllare l'aspetto del controllo Calendar visualizzandone o nascondendone le diverse parti. Nella tabella che segue vengono elencate le parti del controllo Calendar che possono essere visualizzate o nascoste.

Proprietà

Descrizione

ShowDayHeader

Mostra o nasconde la sezione in cui sono visualizzati i giorni della settimana.

ShowGridLines

Mostra o nasconde le linee della griglia tra i giorni del mese.

ShowNextPrevMonth

Mostra o nasconde i controlli di spostamento al mese precedente o successivo.

ShowTitle

Mostra o nasconde la sezione del titolo.

Sebbene l'associazione a un'origine dati non sia supportata nel controllo Calendar, è possibile modificare il contenuto e la formattazione delle singole celle della data. Prima che il controllo Calendar sia visualizzato nella pagina Web, vengono creati e assemblati i componenti di cui è costituito. L'evento DayRender viene generato durante la creazione di ciascuna cella della data nel controllo Calendar. Se si inserisce il codice nel gestore eventi per l'evento DayRender, è possibile controllare il contenuto e la formattazione di una cella della data quando viene creata.

Nota   Il controllo Calendar consente di eseguire il rendering di JavaScript nel browser client. In tale browser deve essere abilitato JavaScript per garantire il corretto funzionamento del controllo. Per ulteriori informazioni sullo script client, vedere Script client nelle pagine Web ASP.NET.

Per informazioni sulle proprietà supportate per ciascuna classe di stile, vedere Proprietà dell'oggetto di stile.

Per informazioni dettagliate sulle proprietà e sugli eventi del controllo Calendar, vedere la documentazione della classe Calendar.

Esempio

Nell'esempio riportato di seguito viene presentata una dichiarazione di un controllo Calendarin un file aspx. La dichiarazione include diverse proprietà di oggetti di stile e imposta il metodo Date_Selected come gestore per l'evento SelectionChanged.

<asp:Calendar id="Calendar2"
     OnSelectionChanged="Date_Selected"
     SelectionMode="DayWeekMonth"
     Font-Name="Verdana" 
     Font-Size="12px"
     NextPrevFormat="ShortMonth"
     SelectWeekText="week"
     SelectMonthText="month"
     runat="server">

   <TodayDayStyle Font-Bold="True"/>
   <DayHeaderStyle Font-Bold="True"/>
   <OtherMonthDayStyle ForeColor="gray"/>
   <TitleStyle BackColor="#3366ff"
               ForeColor="white"
               Font-Bold="True"/>

   <SelectedDayStyle BackColor="#ffcc66"
                     Font-Bold="True"/>
   <NextPrevStyle ForeColor="white"
                  Font-Size="10px"/>
   <SelectorStyle BackColor="#99ccff" 
                  ForeColor="navy"
                  Font-Size="9px"/>
</asp:Calendar>

Nell'esempio che segue viene mostrato un metodo per la gestione degli eventi per un evento SelectionChanged del controllo Calendar. Se si esegue una query sul parametro SelectedDates del controllo Calendar, è possibile stabilire quanti giorni vengono selezionati e, di conseguenza, se l'utente seleziona un giorno, una settimana o un mese. Le informazioni sulla selezione sono visualizzate in un controllo server Web Label.

Sub Date_Selected(sender as Object sender, e As EventArgs)
   Select (Calendar1.SelectedDates.Count)
      Case 0:    'None
         Label1.Text = "No dates are currently selected"
      Case 1:    'Day
         Label1.Text = "The selected date is " & _ 
                       Calendar1.SelectedDate.ToShortDateString
      Case 7:    'Week
         Label1.Text = "The selection is a week beginning " & _
                       Calendar1.SelectedDate.ToShortDateString
      Case Else: 'Month
         Label1.Text = "The selection is a month beginning " & _
                       Calendar1.SelectedDate.ToShortDateString
   End Select
End Sub
protected void Date_Selected(object sender, EventArgs e)
{
   switch (Calendar1.SelectedDates.Count)
   {
      case (0):   //None
      {
         Label1.Text = "No dates are currently selected";
         break;
      }
      case (1):   //Day
      {
         Label1.Text = "The selected date is " + 
                       Calendar1.SelectedDate.ToShortDateString();
         break;
      }
      case (7):   //Week
      {
         Label1.Text = "The selection is a week beginning " + 
                       Calendar1.SelectedDate.ToShortDateString();
         break;
      }
      default:    //Month
         Label1.Text = "The selection is a month beginning " + 
                       Calendar1.SelectedDate.ToShortDateString();
         break;
   }
}

Vedere anche

Concetti

Cenni preliminari sul controllo server Web Calendar

Controlli server ASP.NET

Riferimenti

Calendar

Altre risorse

Sintassi dei controlli server Web