2017-12-14 8 views
-1

別のクラスからメソッド(BeginCommand)を呼び出そうとしています。このメソッドはインターフェイス(IAudioRecorder)を使用しており、パラメータ(レコーダ)を持っています。私のクラスはRecorderViewModelです。ここに私の他のクラスのオーバー パラメータを持つインターフェイスを使用する別のクラスからメソッドを呼び出す方法

public void BeginCommand(IAudioRecorder recorder) 
{ 
    beginRecordingCommand = new RelayCommand(BeginRecording,() => recorder.RecordingState == RecordingState.Stopped || recorder.RecordingState == RecordingState.Monitoring); 
} 

が、私はそれを呼び出すようにしようとしている方法です:

var audiorecorder = new AudioRecorder(); 
var recordviewmodel = new RecorderViewModel(audiorecorder); 
recordviewmodel.BeginCommand(); 

私はそれが動作しますBeginCommand方法からインターフェイスとパラメータ(IAudioRecorderレコーダー)を削除した場合、しかし、どのように私はインターフェイス/パラメータでそれを呼び出すのですか?必要なパラメータに対応する引数がないことを私に伝えています...使用するパラメータがわかりません。

答えて

3

そのここで起こっていただきました、しかし、私のスパイダーマンの感覚は、あなただけの

recordviewmodel.BeginCommand(audiorecorder); 

audiorecorderを想定すると、次の操作を行うことができるかもしれ言われます(あなたの説明を)伝えるのは難しいがIAudioRecorderインタフェース

+1

グッドを実装しますあなたの秋の後にあなたを見てください。 +1 – MickyD

+1

あなたのスパイシーな感覚は正しい!ありがとうございました。ほとんどの場合、私は自分自身で何が起こっているのか分からない。一日のうちにグーグルとスタックオーバーフロー。私はボタンでバインディングコマンドを使用しているwpfアプリケーションを持っています。ボタンを押さずにコードの背後からコマンドを実行する必要があります。それは私がここで達成しようとしていることです(私は思う)。 – Shane

関連する問題