-1

私はこれを達成する方法を少し失っていますが、コードビハインドでそれを行う方法を考える必要さえありません.

グリッドにデータがあり、最初の列が開始時間であるとします。次に、期間という列があります。

エンティティ自体には、データベースに保存される StartTime および EndTime プロパティがあります。計算されたプロパティである Duration を追加しました。

グリッドには 3 つの行があります。

StartTime   Duration (min)
12:40       105
14:25       186
17:31        72

ユーザーが 14:25 から 14:35 に変更した場合、これは 1 行目の EndTime と 2 行目の StartTime が変更されたことを意味します。これは、1 行目と 2 行目の両方の期間を計算して更新する必要があることも意味します。

では、MVVM アーキテクチャでこれを行うにはどうすればよいでしょうか。ユーザーがグリッドで StartTime を変更すると、すべてが更新されますか?

コード ビハインドを使用すると、10 分でこれを実行できます。:)

4

1 に答える 1

1

ウィキペディアでは、ViewModelについて次のように説明しています。

ビューモデルは「ビューのモデル」であり、ビューとビューデータバインディングのターゲットであるモデルとの間の仲介にも役立つビューの抽象化であることを意味します。

したがって、ViewModelにはプロパティStartTimeDurationが必要ですが、ModelにはプロパティStartTimeとが必要EndTimeです。

MVVMの考え方によれば、StartTime/Duration値のペアをStartTime/EndTimeに変換するために必要な計算を実行するのはViewModelです。

于 2012-06-22T17:00:03.780 に答える