The workaround described in this comment in an Avalonia Github Issue worked for me.
You still get the extra seven columns but you can remove them from the DataGrid at the end of the handler method as a last step.
Not a perfect solution, but might work for some.