绑定在Windows应用商店中不起作用

本文关键字:不起作用 应用 Windows 绑定 | 更新日期: 2023-09-27 18:26:20

下面是我的ParamModel类,它继承自DependencyObject

public class ParamsModel : DependencyObject
{
    public object MyProperty
    {
        get { return (object)GetValue(MyPropertyProperty); }
        set { SetValue(MyPropertyProperty, value); }
    }
    public static readonly DependencyProperty MyPropertyProperty =
        DependencyProperty.Register("MyProperty", typeof(object), typeof(ParamsModel), new PropertyMetadata(null));
    public ParamsModel()
    {
    }
}

我在我的XAML中提到了这门课,就像下面的一样

<TextBox Text="{Binding DataContext.MyName,ElementName=pageRoot}" />
<ListBox ItemsSource="{Binding MyItems}"
         Width="500"
         Height="500">
    <local:ParamsModel MyProperty="{Binding DataContext.MyName,ElementName=pageRoot}" />
</ListBox>

我在MyProperty setter上放了断点,它在运行时没有命中,但同一个类Constructor正在命中。有人能在这个上帮我吗

绑定在Windows应用商店中不起作用

这是因为绑定机制没有调用依赖属性的CLR属性。它直接调用GetValue/SetValue

我一直在尝试绑定到Store App中的DependencyObject视图模型,除非我将PropertyMetaData参数设置为null而不是新的PropertyMetaData(null),否则它将无法工作。