OK、私はコマンドを使用しないでください。なぜなら、彼らはいつも私を混乱させるので、私は新しいプロジェクトを開始しています。ビュー。基本的に私が今しようとしているのは、私のビューモデルでいくつかのことをするコマンドを起動するボタンを押し上げることです。私は近くにいると思うけど、そこにはあまり行き届かない。ここに私が今いるものがあります。viewmodelからメソッドを呼び出すコマンド
<Window.Resources>
<RoutedUICommand x:Key="GetMusic" />
</Window.Resources>
<Window.DataContext>
<core:ViewMain />
</Window.DataContext>
<Window.CommandBindings>
<CommandBinding Command="{StaticResource GetMusic}" Executed="GetMusicExecuted"/>
</Window.CommandBindings>
とビューモデルが今
public class ViewMain
{
public MusicCollection Music { get; set; }
private void GetMusicExecuted(object sender, ExecutedRoutedEventArgs e)
{
//Logic
}
}
ほとんど何もありませんが今、私が何をしようとしている私はちょうど私の実行メソッドを呼び出すために私のコマンドバインディングで設定し、このコマンドまでのワイヤであります私のビューモデルでは、ビュー自体の中でそのメソッドを見つけることを試みます。代わりに私のビューモデルのメソッドにそれを向けることができるか、同じことを達成するためにこれを設定するより良い方法はありますか?最初は単純なままにしておきたいので、私はあまりにも早く自分の心を吹き飛ばすことはありません。
あなたはXAMLを介して、またはいずれかの結合セットアップを必要としますコードの後ろ – uowzd01
Prismのような標準のMVVMフレームワークでDelegateCommandsを使用してみましたか?あなたのコマンドはVMに常駐しているのでCommandBindingsを定義しなくてもバインドすることができます。 –