2

我有一个 DataGrid,它的 ItemSource 属性绑定到我的模型中的属性。我希望网格中的组合框列也绑定到同一模型的属性,而不是绑定在 ItemSource 上的属性对象内

<DataGrid ItemsSource="{Binding Path=Model.ObjectList}" AutoGenerateColumns="False" AllowDrop="False">
    <DataGrid.Columns>
    <DataGridTemplateColumn Header="Item No.">
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <ComboBox ItemsSource="?????" SelectedValue="{Binding Path=ItemNumber}" SelectedValuePath="Id"/>
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGrid>

网格的列只能绑定到我的 ObjectList 中的 Object 元素内的属性,有没有办法将父模型的属性绑定到网格单元?

4

1 回答 1

2

你应该使用类似的东西:

{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}, Path= DataContext.ItemSourcePropery}"

其中 ItemSourceProperty 是您要绑定到的 ObservableCollection。此外,如果您在窗口中,请设置类型“窗口”或其他任何内容。

于 2015-03-25T13:18:58.737 回答