获得了如下定义的用户控件:
public partial class EveBlueprintsGrid : UserControl
{
public static DependencyProperty BlueprintListProperty = DependencyProperty.Register(
"EveBlueprints",
typeof(EveBlueprintList),
typeof(EveBlueprintsGrid));
public EveBlueprintList EveBlueprints
{
get { return (EveBlueprintList)GetValue(BlueprintListProperty); }
set { SetValue(BlueprintListProperty, value); }
}
使用XAML:
<DataGrid x:Name="BlueprintsDataGrid" Grid.Row="0" IsReadOnly="True" ItemsSource="{Binding Path=EveBlueprints.Blueprints, ElementName=uc}" AutoGenerateColumns="False">
使用调用XAML:
<Blueprints:EveBlueprintsGrid Grid.Column="1" EveBlueprints="{Binding Blueprints}"/>
我得到“只能在DependencyObject的DependencyProperty上设置绑定”。当我查看正在调用的XAML时。
EveBlueprints包含属性Blueprints,它是一个ObservableCollection。
有趣的是,我在另一个对象上有一个几乎完全相同的副本,没有给我看到的错误。
我在这里想念什么?