c# .net xaml uwp markup-extensions

c# - Custom MarkUpExtension en UWP



.net xaml (1)

Me gustaría crear mi propia MarkupExtension (como Binding , TemplateBinding ...)

¿Cómo puedo hacerlo para Universal Apps como lo hice en WPF?


Tengo un triste, pero no. UWP no admite actualmente extensiones de marcado personalizadas.

En algunos casos puede solucionar esto utilizando enlaces y convertidores. Por ejemplo, para usar una cadena de recursos (sin usar x:Uid ), tengo un convertidor que realmente no necesita un valor, solo un parámetro (la identificación del recurso).

Por ejemplo, podría enlazar de la siguiente manera:

<TextBlock Text="{x:Bind Language, Mode=OneWay, Converter={StaticResource Localize}, ConverterParameter=MyResourceId}" />

(Este enlace no necesita una ruta, pero me enlace a Language todos modos, lo que permite cambiar de idioma sobre la marcha).

Más sobre LocalizeConverter aquí .

Pero de todos modos. Si hubiera estado haciendo WPF, esto habría sido una extensión de marcado. Binding sí es, por supuesto, una extensión de marcado, por lo que siempre que pueda trabajar dentro de sus limitaciones, es una posible solución.

EDITAR

Solo quiero resaltar el enlace que Clemens dio en su comentario al OP:

https://wpdev.uservoice.com/forums/110705-universal-windows-platform/suggestions/7232264-add-markup-extensions-to-and-improve-winrt-xaml