我正在尝试创建一个包含对象列表的自定义列表。虽然在Xaml和后面的代码中都设置了这个,但是我得到了“错误的标记错误”。以下是我如何设置PropertyKey和Property。
private static readonly DependencyPropertyKey ItemSourcePropertyKey = DependencyProperty.RegisterReadOnly(
"ItemSource",
typeof(List<object>),
typeof(MultiSelectComboBox),
new FrameworkPropertyMetadata(null));
public static readonly DependencyProperty ItemSourceProperty = ItemSourcePropertyKey.DependencyProperty;
该领域是:
public List<object> ItemSource
{
get { return (List<object>)this.GetValue(ItemSourceProperty); }
set { this.SetValue(ItemSourceProperty, value); }
}
我得到的错误是:
{"Cannot create instance of 'Window1' defined in assembly 'GroupExpansion, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Exception has been thrown by the target of an invocation. Error in markup file 'Window1.xaml' Line 1 Position 9."}
有没有人之前将DependencyProperty绑定到List?我遇到过一些教程,但是当我尝试模拟教程时,它就落在了它的脸上。 List和Property位于扩展UserControl的文件中。如果您需要更多细节,请询问。我现在已经把键盘从键盘上敲了几天。似乎是围成一圈。
干杯
答案 0 :(得分:1)
找到解决方案,似乎需要将Dependency属性附加到ObservableCollection。然后为了绑定它然后需要非只读,所以可以删除DependencyPropertyKey并仅用DependencyProperty替换。如果有人为此设置实际页面,那将非常有用。