none
Textblock con fecha actual en xaml que se actualice RRS feed

  • Pregunta

  • HOLA!!! necesito tener en un page un Textblock que muestre la fecha y hora actual, al entrar al page se cargaría con el dato al momento, y quiero que cada vez que se interactúe con los controles de la página se actualice, es decir hay varios combos, y botones, y quiero que cuando se cambie alguno de estos el Texblock con la fecha y hora actual se refresque.

    No encuentro una forma de bindear mi textblock con Now en xaml y no tengo idea de cómo implementar que se refresque como comenté, alguien tiene algún enlace, ejemplo o sugerencia que pueda ayudarme???

    Mi proyecto es en Silverlight 5

    Salu2

    lunes, 29 de septiembre de 2014 16:16

Todas las respuestas

  • Hola,

    El objeto que estes utilizando como DataContext, debe poseer una propiedad de tipo DateTime (no hace falta que llame a la propiedad Now). Y al textblock asignarle el binding:

    [Como probablemente quieras darle un formato específico, deberás crear un converter que tome el DateTime y le de el formato deseado y lo regrese como un string y viceversa]

    Text="{Binding NombrePropiedad, UpdateTrigger=PropertyChanged, Converter={staticResource dateTimeConverter}}" />
    //para la implementación de tu converter es tan simple como;

    var date = (DateTime)input;string result = date.ToString("{<El Formato>}");

    Saludos,

    lunes, 29 de septiembre de 2014 22:03
  • No reconoce UpdateTrigger....
    lunes, 13 de octubre de 2014 15:10
  • No entiendo, hice esto:

    this.Loaded += (s, a) =>
    {
        LayoutRoot.DataContext = new Fechas()
        {
            FECHAACTUAL = DateTime.Now
        };
    };
    
    InitializeComponent();

    Fechas es una clase con el miembro FECHAACTUAL en el que implementé INotifyPropertyChanged

    Luego en xaml puse:

    <TextBlock Text="{Binding FECHAACTUAL, UpdateSourceTrigger=PropertyChanged}" Width="Auto" Height="25" HorizontalAlignment="Left"  Margin="10,0,0,0"/>

    En Silverlight no encuentra UpdateTrigger, así que puse UpdateSourceTrigger

    Al ejecutar me pone correctamente la fecha actual, pero no entiendo cómo es que se va a estar actualizando esta fecha conforme el usuario interactúe con los otros objetos del page, que finalmente es lo que necesito...


    jueves, 16 de octubre de 2014 14:54
  • Simplemente elimina el UpdateTrigger por defecto Silverlight actualiza el binding cuando se ejecuta el INotifyPropertyChanged
    • Propuesto como respuesta jose rio jueves, 1 de septiembre de 2016 12:52
    • Votado como útil jose rio jueves, 1 de septiembre de 2016 12:52
    viernes, 17 de octubre de 2014 16:28
  • elimina el UpdateTrigger pora mas informacion ingresa a http://www.esperenzadevidany.net


    • Editado jose rio jueves, 1 de septiembre de 2016 12:56
    jueves, 1 de septiembre de 2016 12:55