Changes

Dynamic Selective List (Client)

1,759 bytes added, 15:56, 22 November 2021
Created page with "{{UBIK}} supports defining a list of values for users to choose from instead of letting them enter arbitrary values. These are what we call selective list and selective list i..."
{{UBIK}} supports defining a list of values for users to choose from instead of letting them enter arbitrary values. These are what we call selective list and selective list items.

== Static & dynamic versions ==
Previously, such a list and list items are static and [[HowTo:Create_a_new_MetaProperty#SELECTIVELIST|parts of a MetaProperty]], which means it's difficult or even impossible to update once they are configured and delivered to the clients in productive environments.

In some scenarios where such lists or list items are known to change quite often, a more dynamic version is needed.

== Technical concept ==
The items of a dynamic selective list are instances of [[ContentClass]], also known as {{UBIK}} objects. So selecting an dynamic selective list item is just like selecting a query result item during editing a Guid/link property. In fact, properties having dynamic selective lists are Guid properties and the feature shares the same technology as the general Guid property editing. In other words:
* The items are found through a filter query (specificalaly a DSL_QUERY);
* The display strings of the selected item are presented as the display value of the property;
* The UID of the object/item is the actual value of the property;
* Through this Guid link, it's possible to get all property values on the selected item.

== Dynamic items ==
The crucial part of this new solution is that it's dynamic, meaning the items to choose from can vary upon data changes of the following.

=== Data hierarchy ===

=== Dependency property values ===

=== Dynamic selective list criteria ===

[[Category:Client|Dynamic Selective List (Client)]]
[[Category:WinX|Dynamic Selective List (Client)]]
[[Category:Xamarin|Dynamic Selective List (Client)]]