Introducing bindings and commands
When the view model is properly configured for a page, it is necessary to indicate how the values of properties should be shown in the user interface, such as where a particular string value should be presented. Of course, it is possible to use the data binding mechanism not only to bind textual values, but also to support other types, such as colors.
What is more, the data binding mechanism supports commands. They allow you to place C# code to handle a particular scenario (such as clicking on a button) in a view model class, not in a code-behind file. In the presented MVVM configuration, the usage of commands requires the RelayCommand
class, as presented in the previous recipe.
As an example, you will create a simple page with a text block and a button. In the text block, the invitation is shown as Hello, Guest or Hello, Marcin, depending on whether the user is logged in. The button content (Log in or Log out) as well as its background (green or red) also...