</source>
[[Category:Client|XAML Tips]][[Category:WinX|XAML Tips]]
=== MultiBinding {{Version/WinXSince|3.6}} ===
This single value is then passed as the command parameter instead of the entire KeyValueList.
=== SetPropertyValueCommand {{Version/WinXSince|3.6}} ===
This command existed before but was implemented differently. In the newer version(s), it is improved to provide customizers more control over the things that happen during/after the property value changes.
The available commnad parameters are:
* PropertyName: the name of the property to set a new value to;
* PropertyValue: the value to be set to the above mentioned property;
* OnlyForUnvalidated (optional, defaults to false): When set to true, the value will only be set if the property is not yet validated;
* AutoSave (optional, defaults to false): When set to true, the change(s) will be saved to the local cache and database;
* AutoCommit (optional, defaults to false): When set to true, the change(s) will be committed to the server.
{{Hint|There's no way to commit changes without saving them locally first. Therefore, the "AutoSave" parameter will be ignored when "AutoCommit" is set to true.}}
Here's an example of the command usage. It tries to set the property called "VALUE" to a double value 50 regardless of its current state and then automatically save and commit the change.
<br />
<source lang = "xml">
<AppBarButton
xmlns:example="using:UBIK.WinX.Controls"
Command="{Binding SetPropertyValueCommand}"
Icon="Edit"
Label="Set to 50%"
Style="{ThemeResource UBIKActionAppBarButton}">
<AppBarButton.CommandParameter>
<example:KeyValueList>
<example:KeyValueParameter Key="PropertyName" Value="VALUE" />
<example:KeyValueParameter Key="PropertyValue">
<example:KeyValueParameter.Value>
<x:Double>50</x:Double>
</example:KeyValueParameter.Value>
</example:KeyValueParameter>
<example:KeyValueParameter Key="OnlyForUnvalidated" Value="false" />
<example:KeyValueParameter Key="AutoSave" Value="true" />
<example:KeyValueParameter Key="AutoCommit" Value="true" />
</example:KeyValueList>
</AppBarButton.CommandParameter>
</AppBarButton>
</source>
{{Hint|It is advised to provide typed values like <nowiki><x:Double>50</x:Double></nowiki>. But for simple types, you can try writing them in the text format like <nowiki><example:KeyValueParameter Key="PropertyValue" Value="50" /></nowiki> and {{UBIK}} will try to find the right type.}}
== Performance related ==