Cómo: Seleccionar fechas mediante programación en un control Calendar de servidor Web

Actualización: noviembre 2007

Puede establecer selecciones de fecha en su propio código, ya sea una fecha única o un intervalo de fechas. A diferencia de la selección que realiza el usuario en el control de una página, es posible seleccionar varias fechas no secuenciales en código.

Nota:

Al establecer una fecha mediante programación no se desencadena el evento SelectionChanged.

Para seleccionar una sola fecha

  • Establezca la propiedad SelectedDate del control en una expresión de tipo DateTime.

    Calendar1.SelectedDate = Date.Today
    
    Calendar1.SelectedDate = DateTime.Today;
    
    Nota:

    Si establece la fecha seleccionada en SelectedDate, se borrarán todas las fechas de SelectedDates.

Para seleccionar un intervalo de fechas

  • Llame al método Add de la colección SelectedDates del control. Puede agregar fechas en cualquier orden, puesto que la colección se encargará de ordenarlas. La colección exige además unicidad, por lo que omitirá las fechas que se agreguen si se encuentran ya en la colección.

    El ejemplo siguiente establece la selección en todos los miércoles del mes de febrero de 2000.

    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
    
       With Calendar1.SelectedDates
          .Clear()
          .Add(New Date(2000, 2, 2))
          .Add(New Date(2000, 2, 9))
          .Add(New Date(2000, 2, 16))
          .Add(New Date(2000, 2, 23))
       End With
    End Sub
    
    public void Button1_Click (object sender, System.EventArgs e)
    {
       SelectedDatesCollection theDates = Calendar1.SelectedDates;
       theDates.Clear();
       theDates.Add(new DateTime(2000,2,2));
       theDates.Add(new DateTime(2000,2,9));
       theDates.Add(new DateTime(2000,2,16));
       theDates.Add(new DateTime(2000,2,23));
    }   
    

    El ejemplo siguiente selecciona una secuencia de siete fechas.

    Dim today As Date = Date.Today
    Dim i As Integer
    
    With Calendar1.SelectedDates
       .Clear()
       For i = 0 To 6
          .Add(today.AddDays(i))
       Next
    End With
    
    DateTime aDate = DateTime.Today;
    SelectedDatesCollection theDates = Calendar1.SelectedDates;
    theDates.Clear();
    for (int i = 0;i <= 6;i++)
    {
          theDates.Add(aDate.AddDays(i));
    }
    

Para borrar una selección de fechas

  • Llame al método Clear de la colección SelectedDates del control, como se hace en el ejemplo siguiente:

    Calendar1.SelectedDates.Clear()
    
    Calendar1.SelectedDates.Clear();
    

Vea también

Conceptos

Información general sobre Calendar (Control de servidor Web)