By what criteria should we decide whether the code is OK or not?
What if the user dialog is a complex wizard? What if the dialog box is a complete gadget? In those cases, I think we can argue that MVVM is worth it, and the code is really not very attractive.
If we accept this, then where do we draw the line? I think we should not, because a dialogue that is simple today may become difficult in the future . It would be better to stay consistent.
In other words: MVVM completely
See also this related question: MVVMs and commands that show more GUI
source share