类型{0}不支持直接内容 - WPF / XAML

时间:2010-06-12 08:30:46

标签: wpf vb.net xaml

我在我的代码中定义了两个类:一个带有公共“Age”和“Name”属性的“Person”类,以及一个继承自Generic.List(T)的“People”类。

People类的代码如下:

Public Class People
    Inherits Collections.Generic.List(Of Person)

    ...
End Class

我想要实现的是直接初始化People类,并在XAML中添加单个Person,即:

<local:People x:Key="Familty">
        <local:Person Age="11" Name="John" />          
        <local:Person Age="12" Name="John2" />
        ...
</local:People> 

但我一直在XAML中收到错误说:     “人物”类型不支持直接内容。

关于如何解决这个问题的任何想法?

非常感谢!

1 个答案:

答案 0 :(得分:1)

你到底想做什么?

您尝试将内容设置为控件(必须是ContentControl /或继承的类)。另请注意,您在xaml中设置内容,这意味着它必须至少是UIElement。

如果要表示人员列表,请将dataTemplate设置为该dataType并具有可视化表示,然后将ItemsSource(应该是项目控件的人员)设置为人员列表(或可观察集合)

您应该考虑将UI与模型分开。

那么,你究竟想做什么?