Violação do padrão MVVM: MediaElement.Play ()

Eu entendo que o ViewModel não deve ter nenhum conhecimento sobre o View, mas como posso chamar o método MediaElement.Play () do ViewModel, além de ter uma referência ao View (ou diretamente ao MediaElement) no ViewModel?
Outra questão (vinculada): como posso gerenciar a visibilidade de controles do View do ViewModel sem violar o padrão do MVVM?

questionAnswers(3)

yourAnswerToTheQuestion