タイトルのようなことをやるときは次のようにやってる。

1
2
3
4
5
6
7
8
9
//以下、Viewのコードビハインド
public MainWindow()
{
InitializeComponent();

var viewModel = DataContext as ViewModels.MainWindowViewModel;
//ここでViewModelのメソッドをよびだす(というあまりやりたくない実装)
ContentRendered += (s, e) => { viewModel.メソッド名(); };
}

はっきり言って全然MVVMっぽくないと思うし、綺麗なMVVMってのがよくわかんない。
いつもフレームワーク(PrismとかLivet)すら使わず完全オレオレMVVMなんだけど、上記のやり方だと簡単なのでとりあえずいつもこうやってる。

ちゃんとフレームワーク使って綺麗なMVVMパターンを習得したいなぁ…