Welcome to the Blazor feedback portal. We’re happy you’re here! If you have feedback on how to improve the Blazor, we’d love to hear it!>
Thanks for joining our community and helping improve Syncfusion products!
Your proposed solution works, but has flaws, as for example, if the user clicks the button and the row is already selected, it will unselect it and aditional code needs to be written to reselect the row in the grid. There are other limitations as well, like if there is a details grid then it gets even more complicated. It would be very useful if the context menu could be opened from a command button. I had the same problem and ended up writing the code for the contextmenu and for the SfDropDown button and since they don't share the same "args parameter" the code can not be shared and needs to be duplicated.
Replacing the contextmenu as proposed in your solution, is a poor man decision. Users need its flexibility and a lot of them may not be aware of its existence, or how to access it, thus the need for the additional commandButton/SfDropDownButton, specially for online demos where the prospect buyer is all by him/herself.