欠点、ユニットテストを行うことができません
たとえば、ユーザーがファイルを選択し、ファイルの内容を解析し、ユーザーを達成するために、インターフェイスのボタンをクリックします。以下の一般的なエラー
1 使用Microsoft.Win32と、 2 3 ネームスペースビュー和ビューモデル分工 4 { 5 パブリック クラスMainWindowViewModel 6 { 7 公共 ボイド構文解析ファイル() 8 { 9 OpenFileDialog openFileDialog = 新しいOpenFileDialog()。 10 であれば(openFileDialog.ShowDialog()== 真) 11 { 12 // 解析文件 13 } 14 } 15 } 16 }
そして、いくつかのユーザーとの対話(OpenFileDialog)は、ビューを配置する必要があります。ここでは、ファイル名パラメータコマンドを渡すために使用することができます
1つの ネームスペースビュービューモデルの分割及び 2 { 3 パブリック クラスMainWindowViewModel 。4 { 5 公共 ボイド構文解析ファイル(文字列filename)で 。6 { 7 // ファイルを解析 8 } 9 } 10 }
[表示]ボタンで対話するイベントをクリックします。ユーザーが操作をキャンセルした場合、異常の使用は、コマンドの実行をキャンセル
1 プライベート ボイド Button_Click(オブジェクト送信者、RoutedEventArgs E) 2 { 3 OpenFileDialog openFileDialog = 新しいOpenFileDialog()。 4 もし(送信者があるボタンのボタン&& openFileDialog.ShowDialog()== 真) 5 button.CommandParameter = openFileDialog.FileName。 6 他の 7 スロー 新しいUserCanceledException(); 8 }
クリックして、コマンドXAMLで部分を指定し、ボタン
< ボタンコマンド=「{}バインディングParseFileCommand 」をクリックして=「Button_Click」コンテンツ=「はファイルの解析を選択して」/>
私の中の完全な例のGithubで