Esto funciona muy bien:

<my:DatePicker IsTodayHighlighted="True" Width="200">
</my:DatePicker> 

Pero quiero el formato de la fecha, algo como esto:

<my:DatePicker IsTodayHighlighted="True" Width="200" Format="yyyy-mm-dd">
</my:DatePicker> 

Alguien sabe la sintaxis para esto?

  • ¿Necesita un diferente formato de fecha para el selector de fecha solamente, o también va a trabajar para establecer un formato de fecha específica para su aplicación en su totalidad?
  • Sólo para el selector de fecha, por ejemplo.

5 Comentarios

  1. 28

    Lamentablemente el DatePicker de control actualmente no tiene soporte gratis DateTime formatos.

    Si esto es algo que usted está interesado en ver hasta el apoyo en la futura versión de selector de fecha, por favor, crear un codeplex función de solicitud que sugiere que.
    http://silverlight.codeplex.com/WorkItem/Create.aspx

    Sólo para señalar que el nuevo Silverlight Toolkit de Marzo de 2009 TimePicker & TimeUpDown controles de el apoyo de una gama completa de la globalización opciones. Uno de esos incluyen conexión DateTime formatos. Así que es sólo una cuestión de interés público sobre la existencia o no de puerto que la capacidad de volver a DatePicker.
    Tener una mirada en el formato de TimePicker @
    http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20Overview%20Part%201#TimePicker

    En el mientras tanto, La mejor solución es cambiar la cultura local o el formato en la cultura local.

        public App()
        {
            Thread.CurrentThread.CurrentCulture = new CultureInfo("nl-NL");

    o cambiar el formato de la cultura local.

            public App()
        {
            Thread.CurrentThread.CurrentCulture = (CultureInfo) Thread.CurrentThread.CurrentCulture.Clone();
            Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern = "D/m/yyyy";
    • La configuración de la actual cultura de las grandes obras – y usted sólo tiene que hacerlo una vez en toda la aplicación.
  2. 1

    Debe definir un control personalizado de la plantilla y editar el cuadro de texto del control de selector de fecha para dar formato al texto.

  3. 0

    Silverlight DatePicker tiene un SelectedDateFormat Propiedad en él, esto puede ser lo que usted está buscando.

  4. 0

    Sólo podría ocultar los controles de cuadro de texto (con un ancho menor), exponer tu propio (opcionalmente establecer el IsEnabled false) y el uso de un Elemento de unión y el Convertidor. Si usted está usando MVVM, a continuación, establezca el DataContext a su ViewModel. Supongo que otra opción sería reemplazar la plantilla de datos para no incluir el cuadro de texto y hacer la misma idea.

    <StackPanel Orientation="Horizontal" Height="22">
          <TextBox x:Name="textBox2" Width="106" Text="{Binding ElementName=datePicker2, Path=SelectedDate, Mode=TwoWay, Converter={StaticResource internationalDateTimeFormatConverter}}" />
          <controls:DatePicker x:Name="datePicker2" IsTabStop="False" SelectedDate="{Binding TargetDatePicker, Mode=TwoWay, NotifyOnValidationError=true, ValidatesOnExceptions=true}" Width="23" HorizontalAlignment="Left" />
    </StackPanel>

    ACTUALIZACIÓN:
    El TwoWay de unión de la caja de texto para el selector de fecha funciona bien, pero no actualiza el ViewModel de la Propiedad. Así que me voy a poner el IsEnabled=False y lo llaman bueno.

  5. 0

    Me doy cuenta que esto es una respuesta a una pregunta.

    Pero me gustaría notificar acerca de en este enlace a un Silverlight 5 kit de herramientas de control hace poco he comenzado a crear. Que contiene (entre otros controles) un DateTimeBox de control en el que usted puede manejar tanto la fecha y la hora en el mismo control. En este punto, está todavía en desarrollo, pero debe ser utilizable para la mayoría de los escenarios.

Dejar respuesta

Please enter your comment!
Please enter your name here