3

TabControl の ContentTemplate に割り当てられた DataTemplate の一部である DataGrid があります。TabControl の ItemsSource はコレクションにバインドされているため、各タブが選択されると、DataGrid の DataContext が新しいコレクションに変更されます。現在、DataGrid には ItemsSource と SelectedItem のバインディングがあります。

タブを移動すると、DataGrid は選択した行を適切に同期させることができますが、SelectedItem の値に関係なく、CurrentCell が常に最初の列と最初の行に設定されるという問題があります。

DataGrid の DataContext が変更されたときに CurrentCell プロパティを設定しようとしましたが、DataGrid は常に最初の行と最初の列にリセットします。DataContext が変更されたときに、CurrentCell を SelectedItem と同じ行に保持する方法を知っている人はいますか?

4

1 に答える 1

0

これは私にとってはうまくいきました(dgはDataGridです):

   DataGridCellInfo cellInfo = new DataGridCellInfo(dg.SelectedItem, dg.Columns[0]);
   dg.CurrentCell = cellInfo;
于 2012-11-14T08:39:44.800 に答える