Blazor link - disable href if there's an onclick method
The way to do it after release 3.1 of ASP.NET Core seems to be
<a href="" @onclick="@SomeAction" @onclick:preventDefault />
Currently you can't control event propagation in Blazor. This feature will be available in the next preview, which is preview 6. You can see the relevant issue on GitHub, https://github.com/aspnet/AspNetCore/issues/5545.
As you have found the pills in bootstrap are styled based on the elements used hence why swapping the a tag for another breaks things.
I think your options right now are either wait for preview 6 or rewrite the pills yourself.
You could try adding the javascript void method to the href.
<a href="javascript: void(0);" onclick="@(() => ChangePage(_someObject))">Test</a>