Changes
/* PropertyViewModel */
This is the view model for every single {{UBIK}} property and also the basement for property direct editing (and regular editing alike). For example, a certain named PropertyViewModel (with the name of PROPERTY_NAME) of the context object in a content page is accessible as <code>{Binding Properties.VisibleItems[PROPERTY_NAME]}</code>.
[[File:UBIK_Xamarin_UI_Template_PropertyDirectItemString_Debug_NotInEditingUBIK_DirectEditing.png|thumb|A test template for direct editing a String property (Mobile)]][[File:UBIK_Xamarin_UI_Template_PropertyDirectItemString_Debug_InEditing.png|thumb|The same template now in edit mode (Mobile)]]
In the example demonstrated in the screenshot where a test template is used to enable direct editing of a String/Text typed property, the following members of the PropertyViewModel are involved.
* '''InEditing''': This is the boolean member indicating whether the PropertyViewModel is currently in edit mode. It can be used to decide whether the UI should display the DisplayValue text or present a text box for user input;
{{Hint|If you are unsure whether '''ValueItem.PropertyValue''' or '''ValueItem.PropertyValueSessionless''' should be used for a certain property type, go with the former. Because most types do have sessions in their direct editing UI. Also, the problem of misusing the former can be seen immediately, namely the editing doesn't work, whereas misusing the latter can lead to more issues that are hard to notice at first.}}
[[Category:Client|Property Direct Edit (Client)]][[Category:Mobile|Property Direct Edit (Client)]][[Category:Version 4.0|Property Direct Edit (Client)]][[Category:WinX|Property Direct Edit (Client)]]
== Relevant types ==
