我想创建自己的MarkupExtension
(例如Binding
,TemplateBinding
...)
如何像在WPF中一样为通用应用程序做到这一点?
我很难过,但没有。UWP当前不支持自定义标记扩展。
在某些情况下,您可以通过使用绑定和转换器来解决此问题。例如,要使用资源字符串(不使用x:Uid
),我有一个转换器实际上不需要值,仅需要一个参数(资源ID)。
例如,我可能绑定如下:
<TextBlock
Text="{x:Bind Language, Mode=OneWay, Converter={StaticResource Localize}, ConverterParameter=MyResourceId}"
/>
(此绑定不需要路径,但Language
无论如何我都绑定了,这允许即时切换语言。)
但无论如何。如果我一直在做WPF,那将是标记扩展。Binding
当然,它本身是标记扩展,因此只要您可以在其约束内工作,这便是可能的解决方法。
编辑
我只想强调Clemens在他对OP的评论中给予的链接:
更新
现在对自定义标记扩展的支持有限!(迈克尔·霍克评论的帽子提示。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句