ОК, вы должны прикрепить событие при загрузке каждой строки! Так что прикрепите следующее к вашему событию LoadingRow ...
private void DataGrid_LoadingRow(object sender, DataGridRowEventArgs e)
{
DataGridRow row = e.Row;
foreach (DataGridColumn col in _dataGrid.Columns)
{
FrameworkElement cellContent = col.GetCellContent(e.Row);
Button b = cellContent as Button;
if (b != null)
{
//clear previous event
b.Click -= ActionButton_Click;
b.Click += new RoutedEventHandler(ActionButton_Click);
}
}
}