在ComboBox中的DataGrid中显示所选项

时间:2009-06-30 15:52:11

标签: wpf datagrid combobox wpftoolkit

我有一个WPF工具包DataGrid作为ComboBox模板的下拉列表。

<toolkit:DataGrid x:Name="InnerGrid"
                  ItemsSource="{TemplateBinding ItemsSource}" 
                  CanUserReorderColumns="False" CanUserResizeColumns="True" 
                  CanUserSortColumns="False" CanUserResizeRows="False" 
                  AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False">
    <toolkit:DataGrid.Columns>
        <toolkit:DataGridTextColumn Header="Account" Binding="{Binding Name}" IsReadOnly="True" />
        <toolkit:DataGridTextColumn Header="Description" Binding="{Binding Description}" IsReadOnly="True" />
    </toolkit:DataGrid.Columns>
</toolkit:DataGrid>

当我在下拉列表中使用DataGrid选择值时,所选项目在DataGrid中显示为突出显示。当我以编程方式设置ComboBox的选定值或在关闭下拉列表时使用箭头键时,所选项目将不会在DataGrid中突出显示。

我是否需要在DataGrid中进行某种绑定以突出显示所选项?

正如Chris Nicol所说,我只需要添加一个绑定到ComboBox的SelectedItem,在本例中是TemplateBinding。

<toolkit:DataGrid x:Name="InnerGrid"
                  ItemsSource="{TemplateBinding ItemsSource}" 
                  SelectedItem="{TemplateBinding SelectedItem}"
                  CanUserReorderColumns="False" CanUserResizeColumns="True" 
                  CanUserSortColumns="False" CanUserResizeRows="False" 
                  AutoGenerateColumns="False" CanUserAddRows="False"
                  CanUserDeleteRows="False">
<snip>

1 个答案:

答案 0 :(得分:1)

听起来你需要将ComboBox的selectedItem绑定到DataGrid的SelectedItem。你能否更新问题以包含comboBox?