No meu aplicativo WPF, quero criar uma nova exibição. Onde devo fazer isso - no ViewModel ou Model ?
O aplicativo é (muito simples por enquanto) uma ferramenta semelhante a formulários de uma janela com um único botão "enviar". Caso uma das caixas de seleção esteja selecionada, uma nova janela usando o mesmo ViewModel deve aparecer para solicitar ao usuário alguns detalhes adicionais. Para os fins desta pergunta, vamos considerar apenas a nova abordagem de janela sem considerar outras abordagens, como o painel mostrado / oculto.
Idealmente, no View não deveria haver nenhum código. Além disso, como o View não possui lógica, a VM inicialmente precisaria verificar se é necessária a criação de um novo modo de exibição e - quando estiver - devolvendo essa responsabilidade ao View, levando ao inchaço do código.
Por outro lado, a criação de uma nova visualização no ViewModel viola o princípio de que o ViewModel não deve saber nada sobre o ViewModel.
Então, é melhor criar novas visualizações no View ou no ViewModel?