VM lifecycle has got to be of the more underappreciated and understudied systems in the .NET. It can cause so many headaches, bugs and general weirdness if someone hasn't properly and fully informed themselves of why it's there, how it works and when to take advantage of the steps.
@@SingletonSean Sure seems like it, which doesn't help the 'interest factor' on it either. Thanks for taking the time to take the lumps for the rest of us 🤣
I did something similar with virtual functions in a base viewmodel which can be overriden in each impl and also created a base content page which calls the functions directly. But the idea of using bindable commands sounds pretty interresting. Are these blocking calls or will they be async/fire and forget? So that the view doesn't hang on load
@@SingletonSean thanks thats awesome need to implement that. Do you use custom "base" types like vm or pag or do you just implement that everywhere you need it?
I use the MVVM Toolkit for all the base types (CommunityToolkit.MVVM). This includes base view models for INotifyPropertyChanged and classes for async commands. It's super helpful!