我有一个DataGrid,它是分配给TabControl的ContentTemplate的DataTemplate的一部分。 TabControl的ItemsSource绑定到一个集合,因此,一旦选中每个Tab,DataGrid的DataContext就会更改为一个新集合。目前,DataGrid上有ItemsSource和SelectedItem的绑定。
当我浏览选项卡时,DataGrid能够使所选行保持正确同步,但我遇到的问题是,无论SelectedItem等于什么,CurrentCell总是设置为第一列和第一行。
我已尝试在DataContext的DataContext更改时设置CurrentCell属性,但DataGrid始终将其重置为第一行和第一列。当DataContext发生变化时,有没有人知道如何将CurrentCell保持在与SelectedItem相同的行上?
答案 0 :(得分:0)
这适用于我(其中dg是DataGrid):
DataGridCellInfo cellInfo = new DataGridCellInfo(dg.SelectedItem, dg.Columns[0]);
dg.CurrentCell = cellInfo;