0

これは些細な質問のように聞こえるかもしれませんが、ここStackflowでも、単純な文字列コレクションへのバインドしか見つかりませんでした。

NameとAgeの2つのプロパティを持つParentクラスがあります。

ChildNameとChildAgeの2つのプロパティを持つChildクラスがあります。

MVVMパターン内で、これらのプロパティをViewModelに公開し、さらに、ParentViewModelにもObservableCollectionの子を追加しています。

したがって、ParentViewModelには、Name、Age、Childrenの3つの公開プロパティが含まれています。

//Inside ParentViewModel
public ObservableCollection<ChildViewModel> Children

私のWindow.xamlは、公開しているMainViewModelにバインドされています

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

データグリッドは次のように定義されます。

<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

DataGridComboBoxColumnItemsSourceプロパティを に設定しChildrenます。

于 2010-10-02T16:13:14.530 に答える