別のグリッドを含む RowDetailsTemplate を持つ DataGrid があります。
その詳細グリッドの行をダブルクリックすると、セルの内容が選択した親行の対応するセルに入力されます。
<DataGrid Name="dataGrid1" DataContext="{Binding}" ItemsSource="{Binding Source={StaticResource ..}}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Old Link Source" Binding="{Binding Path=OldLinkSource}"/>
<DataGridTextColumn Header="New Link Source" Binding="{Binding Path=NewLinkSource}"/>
</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<DataGrid Name="dataGrid1Details" ItemsSource="{Binding Path=PossibleCandidates}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Similarity" Binding="{Binding Path=Key}"/>
<DataGridTextColumn Header="Possible New Link Source" Binding="{Binding Path=Value}"/>
</DataGrid.Columns>
</DataGrid>
</DataTemplate>
<DataGrid.RowDetailsTemplate>
</DataGrid>
私の理解では、行が変更されるたびに詳細グリッドが再作成されます。私は WPF を初めて使用し、現在表示されている詳細グリッドを把握してそのイベントをサブスクライブする方法について無知です。