The issue happens because XamDataGrid enters edit mode on any cell click, which toggles the checkbox.
Stop auto toggle
<igDP:Field Name=”IsChecked”>
<igDP:Field.Settings>
<igDP:FieldSettings CellClickAction=”SelectCell”/>
</igDP:Field.Settings>
</igDP:Field>
Toggle only when checkbox is clicked
private void Grid_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
var dep = (DependencyObject)e.OriginalSource;
while (dep != null && !(dep is XamCheckEditor))
dep = VisualTreeHelper.GetParent(dep);
if (dep is XamCheckEditor editor)
{
editor.IsChecked = !(editor.IsChecked ?? false);
e.Handled = true;
}
}
Result
Click cell → no toggle
Click checkbox → toggle
Ctrl/Shift multi-select works