モデルとビューが切り離せてないってそれはプログラマの問題なんだが
何でごっちゃにするのか?

xamlだとConverterとかVisualStateManagerとかまじでウザすぎる
後、基本、BindingのDataContextのためにRootのViewModelからたどれるようにしたり
そこら辺Flutterだとほぼコードで自由で楽すぎる