xaml - 绑定(bind)到 ElementName 取决于绑定(bind)顺序

标签 xaml binding uwp visualstates xbind

我创建了简单的 StateTrigger 来绑定(bind)到 FrameworkElement Width 属性。共有三个依赖属性:MinValueMaxValueElement。它们的类型分别是 doubledoubleFrameworkElement

而且我注意到,根据绑定(bind)顺序,它可能有效也可能无效。

这很好用。

<local:ElementWidthTrigger MaxValue="1000"
                           MinValue="800"
                           Element="{Binding ElementName=LayoutRoot}" />

这不是。

<local:ElementWidthTrigger Element="{Binding ElementName=LayoutRoot}"
                           MaxValue="1000"
                           MinValue="800" />

注意到这两个示例的唯一区别是 Element 属性绑定(bind)顺序。

ElementWidthTrigger 中,每个依赖属性都有属性更改回调。当 Element 位于最顶部时,无论如何都不会调用它的回调。

x:Bind 解决了这个问题,无论使用什么顺序,但问题仍然存在。谁能解释为什么 Element 属性无法根据绑定(bind)顺序进行绑定(bind)?

在 Windows 10 1803 build 17134.320 上运行。

可以找到工作示例项目 here .

最佳答案

感谢您报告此问题并提供可靠的重现项目 - 这是一个平台错误。我已将其记录在我们的数据库中并分配给正确的团队。再次感谢!

关于xaml - 绑定(bind)到 ElementName 取决于绑定(bind)顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52717132/

相关文章:

c# - 如何从 XAML 中的 DataTemplate 引用匹配对象?

c# - 在 MVC3 中无法绑定(bind)到列表

visual-studio-2015 - 在 VS2015 中部署 UWP App 项目

wpf - 使用Blend生成的XAML

c# - 为什么当焦点在 WindowsFormsHost 内时 Keyboard.FocusedElement 为空?它破坏了 WPF 命令路由

WPF 圆角背景渗出

.net - ScrollViewer 中的列表框

c# - WPF应用程序的自动完成功能

c# - Listview 项目内的 UWP 按钮

c# - 在 UWP 中振动手机