Как насчет использования конвертера?
public class SelectedItemsConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var dg = value as DataGrid;
return dg?.SelectedItems;
}
...
Используйте это в DataGrid
ContextMenu
как это:
<DataGrid.ContextMenu>
<ContextMenu>
<MenuItem
CommandParameter="{Binding Path=MySelectedItems, Converter={StaticResource selectedItemsConverter}, Mode=OneWay, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ContextMenu}}}"
Command="{Binding MyDoSomethingWithMySelectedItemsCommand}"
Header="Do Something...">
</MenuItem>