the examples i have seen so far and tried to use all have a common problem: the change the page rendering of other components and that creates problems with user interaction.
what is needed and i have not found any free / open source for is a busy that is just ann html / css overlay of the visual page so that all of the other page components render and maintain state.
if the page components are still rendered and on the page then they will not lose state and the spinner just acts like a "curtain" in the front of then stage that can be pulled back when the page is ready.
i am not skilled at creating blazor components so i am asking for others to do this or at least see if this is the best way to do this.
for example if i have a RadZen Data grid and the user adds a filter for one column the grid refreshes, now they click on a second column to add a second filter.... if the busy spinner clears the page then the first filter is lost and the user can not filter on multiple columns.
the page is now broken.
update: i now see that the data grid does have a busy spinner! but i only see it if the grid has data rows.
this spinner needs to be shown on the first page load when there are no data rows to show.
that will make a huge difference in the user experience !
For loading overlay check this link
thanks, this along with some things i have been finding may be the solution i want.
i did find that i could "borrow" a scrap from the data grid source and make a fairly good page busy but i think this will make it better with a few tweaks....
Here's my implementation, which wraps a component and uses a supplied model to bind to IsBusy for spinner and IsLoading for "Loading..." at initialization. IsBusy adds a 50% opaque screen in front of the component and animates a spiner.
GdeBabki/BusyLoad.razor at master · glutio/GdeBabki (github.com)
GdeBabki/BusyLoad.razor.css at master · glutio/GdeBabki (github.com)
i am using the dialog, i also changed my app to just use the dialog for editing so that the app never leaves my grid view page.... rather than fight with how to manage state.