从代码绑定到 WinRT/UWP 中的自定义附加属性
Posted
技术标签:
【中文标题】从代码绑定到 WinRT/UWP 中的自定义附加属性【英文标题】:Binding from code to a custom attached property in WinRT/UWP 【发布时间】:2017-01-25 19:26:26 【问题描述】:我正在尝试从针对多个框架(WPF、WinRT、UWP 等)的库中的代码创建绑定,但我遇到了障碍。我要绑定的属性是 custom 附加属性。在 WPF 中,我可以将 DependencyProperty
本身作为绑定路径传递:
new PropertyPath(MyClass.MyAttachedProperty)
但在 WinRT 中,PropertyPath
类只接受字符串。我试图像这样传递属性的名称:
new PropertyPath("(MyClass.MyAttachedProperty)")
当然它不起作用,因为我的类不在默认命名空间中。在 XAML 中,我可以将命名空间映射到前缀并使用该前缀,但据我所知,从代码中无法做到这一点。
有没有办法在代码中创建这个绑定?
【问题讨论】:
【参考方案1】:好问题,经过研究和讨论,我们已经确认在 UWP 中,我们无法以编程方式绑定到自定义附加属性。很遗憾。
您可以通过 Windows 反馈工具提交添加此新功能以进行开发的请求。
【讨论】:
@ThomasLevesque,不客气,对不起,我帮不上什么忙。 没关系,我找到了另一种方法来做我想做的事。我通过反馈应用发布了一条建议。 我尝试用 UWP 做的第一件事。哎呀。我试图将画布的附加属性 Left 绑定到 propdp。【参考方案2】:这里似乎有一个解决方案,其中涉及使用 XamlReader.Load 和包含绑定的资源字典,以让加载程序为您完成工作。
How can I bind to a custom attached property in c# from code behind in a windows store app?
【讨论】:
很好,谢谢!我不再需要这个,但我会记住它以上是关于从代码绑定到 WinRT/UWP 中的自定义附加属性的主要内容,如果未能解决你的问题,请参考以下文章
如何将最新数据附加到android中的自定义基本适配器列表视图?
将视图附加到Android中的自定义RelativeLayout