Quick intro... I'm writing an app for my company that supports iOS, Android, Windows, UWP, and finally getting around to the Mac platform.
App is nearly done for all other platforms except macOS. So far 80% code-reuse with iOS and Android, 60% Windows & UWP. Was hoping to leverage my ViewModel layer with macOS, but for obvious reasons, I cannot.
I came across this excellent xamarin resource for adding Data binding support to macOS apps. In that resource there is no mention of using a NSTableViewDataSource. By the way, all Xamarin Mac samples use a NSTableViewDataSource.
My question is, should I not even entertain the MVVM pattern for a macOS app, or should I utilize the NSTableViewDataSource approach? To me, it seems like the NSTableViewDataSource is akin to the classic WinForms code-behind methodology (for those of you who remember WinForms, pre-WPF days). In other words, limited extensibility and maintenance nightmares lie ahead.
I can't figure out how to databind my RelayCommand to the TableView's row double-click, but I can see how to do it using the NSTableViewDataSource, which at this point, leaning towards MVVM.
Any insight you have will be greatly appreciated.