As we migrate work from existing frameworks in #891, we should start thinking about unifying our MVVM pattern frameworks.
MvvmLight comes to mind
Hey @crutkas, was just about to open an issue about this but I'll just comment here then 馃槃
I was browsing through the codebase today and saw you're already using some packages from the Windows Community Toolkit, have you considered moving Power Toys to use the new MVVM Toolkit (aka Microsoft.Toolkit.Mvvm
) package? We presented it last months at .NET Conf and released a new preview build that is available on NuGet, and the plan is for it to be officially available with the next 7.0 release of the WCT. This new package can be seen as the successor to MvvmLight and we also have some migration docs for developers coming from MvvmLight, so if you were considering that lib, the MVVM Toolkit seems like a good choice?
@michael-hawker and I will be happy to help if you have any questions about it!
Keep up the awesome work! 馃槉
The other good thing with the MVVM Toolkit is that it's .NET Standard, so since Power Toys has WPF + UWP components, you could use it to help solidify the common bits between them (if any).
We have chatted with @michael-hawker on this in the past and can see adopting this.
While we want to do it, it is a larger task and would need each item broken down. I think don't think it is an item we are prioritizing for our larger 'push to stability' push but would accept community members helping migrate.
Thanks @crutkas for the update. We should be shipping 7.0 in January 馃. Would you be wanting to wait for our final release of the MVVM library or is getting started with the preview alright if someone wants to take this on?
Our API surface for the MVVM Toolkit should be pretty stable now. I don't think we expect too many radical changes outside of potentially ObservableValidator
which we're trying to coordinate a bit more with the WinUI team on. Right @sergio0694?
@michael-hawker Yup, outside of possibly some changes to ObservableValidator
to improve the experience with WinUI (which should mostly just be new APIs though), I would consider the current API surface pretty stable at this point - it's the 4th preview after all 馃槃
In my branch for Preview 5 I mostly just have some more tweaks and minor improvements or internal optimizations, but nothing that would be breaking for consumers so far.
Most helpful comment
We have chatted with @michael-hawker on this in the past and can see adopting this.
While we want to do it, it is a larger task and would need each item broken down. I think don't think it is an item we are prioritizing for our larger 'push to stability' push but would accept community members helping migrate.