0

这听起来像是一个微不足道的问题,但即使在 Stackflow 中,我也只发现绑定到一个简单的字符串集合。

我有一个具有两个属性名称和年龄的父类。

我有一个具有两个属性 ChildName 和 ChildAge 的 Child 类。

在 MVVM 模式中,我将这些属性公开到 ViewModels 中,此外,我还在 ParentViewModel 中添加了一个 ObservableCollection Children

因此,ParentViewModel 包含三个公开的属性:Name、Age 和 Children。

//Inside ParentViewModel
public ObservableCollection<ChildViewModel> Children

我的 Window.xaml 绑定到暴露一个

public ObservableCollection<ParentViewModel> Parents { get; set; }

Datagrid 的定义如下:

<DataGrid ItemsSource="{Binding Parents}" AutoGenerateColumns="False">
            <DataGrid.Columns>
                <DataGridTextColumn Header="Name" Binding="{Binding Name}" />
                <DataGridTextColumn Header="Age" Binding="{Binding Age}"/>
                <DataGridComboBoxColumn Header="Children" 
                                        DisplayMemberPath="ChildName" 
                                        SelectedValueBinding="{Binding Children.ChildName}"
                                        SelectedValuePath="ChildName"
                                        SelectedItemBinding="{Binding Children}"
                                        >

                </DataGridComboBoxColumn>
            </DataGrid.Columns>
        </DataGrid>

虽然父母的姓名和年龄显示正确,但我没有看到填充的儿童组合框。我感到困惑和沮丧。请帮忙。:)

4

1 回答 1

0

DataGridComboBoxColumn'ItemsSource属性设置为Children

于 2010-10-02T16:13:14.530 回答