我有一个 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>