-1

さまざまなウィンドウで、プレゼンターがさまざまなスタイルに従うビデオを見たことがあります。

例えば:

あるウィンドウで、彼は以下のように使用します。

EmployeeViewModel evm = (EmployeeViewModel)this.DataContext;
evm.Display();

別の例では、次のように使用しています。

EmployeeViewModel evm = new EmployeeViewModel();
evm.Display();

技術的な違いと最適な使用方法は何ですか? 違いを理解するのを手伝ってください。

4

1 に答える 1

2

最初のコード フラグメントは、現在表示されている ViewModel を取得します。(null チェックを行う必要があります)

2 番目のコード フラグメントは、ViewModel の新しいインスタンスを作成します。

Display() が何をするのか明確でないため、2 つのフラグメントの効果の違いを説明するのは困難ですが、2 番目のフラグメントはビューを無視する ViewModel の (単体) テストである可能性があります。

両方のフラグメントが異なる目的を果たしているため、私が見る限り最善の方法はありません。

于 2013-07-01T06:41:31.023 に答える