WPF DataGrid ItemsSource - 从ComboBox更改

时间:2014-04-23 09:57:35

标签: wpf datagrid combobox

以下是XAML的片段:

<ComboBox ItemsSource="{Binding UnileverDataSet.Tables, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Margin="5" x:Name="TableNameComboBox">
                    <ComboBox.ItemTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding TableName}"></TextBlock>
                        </DataTemplate>
                    </ComboBox.ItemTemplate>
                </ComboBox>
                <DataGrid Margin="5" AutoGenerateColumns="True" ItemsSource="{Binding UnileverDataSet.Tables[TableNameComboBox.SelectedIndex]}"

UnileverDataSet是DataSet,由大约12 DataTable s

组成

这里的想法是,当ComboBox值发生变化时,DataGrid应根据ComboBox中的索引值进行更新。

这是可能的还是我应该考虑另一种方法呢?

如果我执行:UnileverDataSet.Tables[0],则所有作品和数据都会正确显示。

1 个答案:

答案 0 :(得分:0)

你可以用组合框进行元素绑定..

您的combox将显示&#34; UnileverDataSet.Tables&#34;中的项目列表。采集。当您在组合框中选择一个项目时,所选项目将绑定到数据网格项目源(因为我们使用元素绑定)

以下是示例代码

<DataGrid Margin="5" AutoGenerateColumns="True" ItemsSource="{Binding SelectedItem,ElementName=TableNameComboBox}">