none
¿Como llamar una variable en XAML? RRS feed

  • Pregunta

  • Bueno, lo que tengo, es un dataGrid con una columna personalizada, y esta a su vez esta compuesta por un objeto Image

    A través de una conexión a una base de datos obtengo la ruta de la imagen y en el XAML la aplico al source del Image, el problema es que el control Image al parecer solo acepta rutas absolutas y no relativas y necesito que las obtenga desde el directorio en el que se ejecuta la aplicación.

    Intente cambiar el Image por un mediaElement y este si permite las rutas relativas, el problema es que la imagen demora un poco en cargar a diferencia del control Image que la dibuja al instante.

    Lo que se me ocurrió es obtener la ruta de la aplicación mediante AppDomain.CurrentDomain.BaseDirectory y asignarla a una variable, la que luego en el XAML podria invocar y hacer una especie de enlace entre la variable que contiene la ruta de la aplicación + la ruta de la imagen traida a través del Binding...

    Ahora bien lo que no se es como invocar dicha variable en el XAML o si esto es posible... y de no serlo ¿Alguna otra forma de poder mostrar la imagen?

    martes, 6 de diciembre de 2011 21:19

Todas las respuestas

  • Estoy seguro de que se puede hacer algo mejor, pero te cuento cómo se me ocurre que podrías hacer lo que proponé (para que puedas investigar algo, al menos hasta que alguien dé una mejor solución!) Usando un Binding Converter podés tomar el valor de un Binding y modificarlo, dentro de un método, como más te convenga. En ese método te sería muy fácil concatenar el valor del BaseDirectory al del path relativo que obtenés mediante Binding. Te sugiero que busques en google cómo se implementan los Converters ya que hay bastante información. Un saludo, Martín
    Martín Coll
    miércoles, 7 de diciembre de 2011 2:47
  • Ya mismo lo googleo ;) Gracias por la información
    miércoles, 7 de diciembre de 2011 13:02