The Awwshop definition(s) for the word MVVM.

MVVM stands for Model View ViewModel and is an architectural pattern. In WPF it's a method of using separate elements (data structure, and the data itself) that can be utilized with other controls.

Here's how I break down the M, V, and VM in MVVM.

  • M (Model)
    The property class. This is the data structure. You can look at it as a row in a database table, or the design view of a table in a database.
  • V (View)
    This is the control that will display the data.
  • VM (ViewModel)
    This is a combination of the data, data binding, and control functions that allow the control to contain and manipulate the data. A good example would be the Refresh() function.

In WPF you have no choice but to use MVVM with controls like ListView, DataGrid, ListBox, and ComboBox.

Other definitions: