none
Asignar un binding a la propiedad TargetNullValue RRS feed

  • Pregunta

  • Hola, resulta que estaba acabando una de las pantallas de mi aplicación para WP Mango y la estoy localizando en distintos idiomas, de momento la tengo en inglés y en castellano, y quería que en un textblock me mostrase un texto localizado en caso de que el objeto con el que hay que hacer el binding venga nulo y hago algo como esto:

    <TextBlock Text="{Binding Visitante, TargetNullValue={Binding Instance.Texts.UnavailableText, Source={StaticResource LocalizationManager}}}" />
    

    Pero me salta una excepción de InvalidOperationException y ni siquiera llega a cargarse la aplicación en el emulador, salta por el método Application_UnhandledException, y me gustaría saber cómo le puedo hacer el binding a esa propidad para que me funcione la localización, porque he visto esto:

    https://connect.microsoft.com/VisualStudio/feedback/details/632602/silverlight-4-targetnullvalue-binding-to-resource

    y lo mismo se trata de algún bug de silverlight 4.

    Gracias.


    domingo, 9 de octubre de 2011 19:49

Respuestas

  • Buenas!

    Por lo que veo en Connect la incidencia sigue activa, así que es muy posible que sigua vigente. Yo lo he probado y reproduzco el problema con las RTM de Windows Phone 7.1.

    Una solución rápida sería crearte un IValueConverter que recibiese el texto y si este es nulo, devolviese el Instance.Texts.UnavailableText

    Es lo más sencillo y que menos afecte al rendimiento que se me ocurre.

    Un saludo!

     


    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter
    martes, 11 de octubre de 2011 5:29
    Moderador

Todas las respuestas

  • Buenas!

    Por lo que veo en Connect la incidencia sigue activa, así que es muy posible que sigua vigente. Yo lo he probado y reproduzco el problema con las RTM de Windows Phone 7.1.

    Una solución rápida sería crearte un IValueConverter que recibiese el texto y si este es nulo, devolviese el Instance.Texts.UnavailableText

    Es lo más sencillo y que menos afecte al rendimiento que se me ocurre.

    Un saludo!

     


    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter
    martes, 11 de octubre de 2011 5:29
    Moderador
  • Hola, es lo que tenía pensado hacer, pero me surge una duda, y es que si por ejemplo cambio la cultura/idioma de la aplicación, ¿cómo hago para que me actualice estos valores también?
    martes, 11 de octubre de 2011 9:59