データ グリッドに複数の行を選択するように指示するのは、単純な "SelectionMode=Extended" です。ただし、2 行目を自動的に選択する動作を追加する必要があると思います。このようなもの(ほとんどがハードコードされているため、完全に機能しない場合があります;)
新しいクラスを作成し、それを DataGridSelectMulti.cs と呼びます
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Text;
namespace DataGridSelectMulti
{
public class DataGridSelectMulti: CommandBehaviorBase<DataGrid>
{
protected override void OnAttached()
{
base.OnAttached();
this.AssociatedObject.SelectionChanged += new SelectionChangedEventHandler(AssociatedObject_SelectionChanged);
}
void AssociatedObject_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (sender is DataGrid)
{
DataGrid grid = (sender as DataGrid);
if (grid.SelectedItem != null)
{
grid.UpdateLayout();
//TODO
// Something like grid.SelectedItems = List
}
}
}
protected override void OnDetaching()
{
base.OnDetaching();
this.AssociatedObject.SelectionChanged -= new SelectionChangedEventHandler(AssociatedObject_SelectionChanged);
}
}
XAML
<Grid>
<DataGrid name='' Selcted...>
<i:Interaction.Behaviors>
<my1:DataGridSelectMulti/>
</i:Interaction.Behaviors>
<DataGrid .Columns />
</DataGrid >
</Grid>