如何将itemssource绑定到另一个itemssource的datagrid中的combobox

时间:2014-06-27 09:29:50

标签: wpf binding

这是我的代码.. 如何将itemssource绑定到另一个itemssource

的datagrid中的combobox
<DataGrid x:Name="dgData" AutoGenerateColumns="False" BorderBrush="Aqua" MinWidth="500" MinHeight="270" ItemsSource="{Binding SelectedAccDtList}" Background="Transparent"  CanUserAddRows="True">
    <DataGrid.Columns>                                           
        <DataGridTextColumn Header="SR.NO." Binding="{Binding SelectedAccDtList.InstCode}" />
        <DataGridComboBoxColumn  Header="ACCESSORY_NAME" SelectedValueBinding="{Binding SelectedAccList, Mode=TwoWay}"  SelectedValuePath="ItemCode" DisplayMemberPath="ItemName" />
        <DataGridTextColumn Header="ACCESSORY_SCOPE" Binding="{Binding AccScop}"/>
        <DataGridComboBoxColumn Header="ACCESSORY_TYPE" ItemsSource="{Binding AcccTyp}">
        </DataGridComboBoxColumn>
    </DataGrid.Columns>
</DataGrid>

1 个答案:

答案 0 :(得分:0)

要执行您想要的操作,您需要正确构建数据。这意味着您需要为您的数据项创建一个类,并且在该类中,您需要拥有一个集合属性:

<DataGrid ItemsSource="{Binding ClassItems}" AutoGenerateColumns="False">
    <DataGrid.Columns>                                           
        <DataGridTextColumn Binding="{Binding StringPropertyFromClass}" Header="SR.NO." />
        <DataGridComboBoxColumn ItemsSource="{Binding CollectionPropertyFromClass}"
            SelectedItem="{Binding DataItemPropertyFromClass, Mode=Two-Way}" Header="Items" />
        ...
    </DataGrid.Columns>
</DataGrid>