我有一个包含大约500个项目的DataGrid。用户可以加载更多项目,因此我更改了DataGrid.ItemsSource。当发生这种情况时,我会失去对所选行的关注,但我之前得到了行索引。
我现在如何将焦点设置在带索引的行上?
我正在使用WPF和C#与EF6.1
代码示例:
<DataGrid Name="MainDataGrid" SelectionChanged="MainDataGrid_SelectionChanged" SelectionMode="Single" IsSynchronizedWithCurrentItem="True">
<DataGrid.Columns>
<DataGridTextColumn Header="Date" Binding="{Binding Date}"></DataGridTextColumn>
//...
</DataGrid.Columns>
</DataGrid>
答案 0 :(得分:0)
您可以通过分配以编程方式执行此操作 datagrid的SelectedIndex属性的索引值:
MainDataGrid.SelectedIndex = yourIndex;
此外,您可能希望将datagrid滚动到索引处的项目:
MainDataGrid.ScrollIntoView(MainDataGrid.Items[yourIndex]);
查看this问题可能会很有趣。