Jump to: navigation, search

Difference between revisions of "Active List Client"


(Introduction)
Line 1: Line 1:
 
{{UnderConstructionStart}}
 
{{UnderConstructionStart}}
  
==Introduction {{Version/MobileSince|5.1.0.0}}==
+
==Introduction {{Version/WinXSince|5.1.0.0}} {{Version/MobileSince|5.1.0.0}}==
If an Active List is defined on a [[Instance|Content Object]] that is associated with an [[MetaProperty#Integer|integer]] [[MetaProperty]], the property is displayed using the existing icon (the same icon applied to properties with a [[UBIK WinX Client Basics#Selective List Properties|SelectiveList]]), followed by the property's display string and the label of the currently selected list item in a closed drop-down component. An ActiveList (i.e., if it has been configured on the server for the content object) always takes precedence over a MetaProperty SelectiveList  
+
If an Active List is defined on a [[Instance|Content Object]] that is associated with an [[MetaProperty#Integer|integer]] [[MetaProperty]], the property is displayed using the existing icon (the same icon applied to properties with a [[UBIK WinX Client Basics#Selective List Properties|SelectiveList]]), followed by the property's display string and the label of the currently selected list item in a closed drop-down component. An ActiveList (i.e., if it has been configured on the server for a content object) always takes precedence over a MetaProperty SelectiveList.
  
For editing, it behaves exactly the same as with a standard SelectiveList. The client uses a dropdown menu UI component and the dropdown menu allows the user to select exactly one value from the Active List.
+
For editing, it behaves exactly the same as with a standard SelectiveList.
  
When the user opens the dropdown:
+
When the user opens ActiveList:
 
* All available options from the ActiveList are displayed as text labels.
 
* All available options from the ActiveList are displayed as text labels.
 
* The label for each option is shown in the language configured on the web service. If a translation for the configured language is unavailable, the label is displayed in the default language.
 
* The label for each option is shown in the language configured on the web service. If a translation for the configured language is unavailable, the label is displayed in the default language.
Line 18: Line 18:
  
 
=== XAML ===
 
=== XAML ===
To enable access to an ActiveList from XAML, a new property named SelectiveItems was added to the PropertyViewModel. This property returns the ActiveList if one is configured on the content object; otherwise, it falls back to the SelectiveList defined on the MetaProperty if no ActiveList is available for the content object. Below is an example of how this can be implemented in XAML. For the SelectedItem, it is important to use the PropertyValueToSelectiveItem converter and pass the control’s own ItemsSource path as the ConverterParameter, so that the list can be provided to the converter. This means that no DataTriggers or similar mechanisms are required to switch between ActiveLists and MetaProperty SelectiveLists or to perform any checks.
+
To enable access to an ActiveList from XAML a new property named SelectiveItems was added to the PropertyViewModel. This property returns the ActiveList if one is configured on the content object; otherwise, it falls back to the SelectiveList defined on the MetaProperty if no ActiveList is available for the content object. Below is an example of how this can be implemented in XAML. For the SelectedItem, it is important to use the PropertyValueToSelectiveItem converter and pass the control’s own ItemsSource path as the ConverterParameter, so that the list can be provided to the converter. This means that no DataTriggers or similar mechanisms are required to switch between ActiveLists and MetaProperty SelectiveLists or to perform any checks.
  
 
<tabs>
 
<tabs>

Revision as of 07:49, 20 April 2026

Wiki Under Construction Start.PNG

Introduction

If an Active List is defined on a Content Object that is associated with an integer MetaProperty, the property is displayed using the existing icon (the same icon applied to properties with a SelectiveList), followed by the property's display string and the label of the currently selected list item in a closed drop-down component. An ActiveList (i.e., if it has been configured on the server for a content object) always takes precedence over a MetaProperty SelectiveList.

For editing, it behaves exactly the same as with a standard SelectiveList.

When the user opens ActiveList:

  • All available options from the ActiveList are displayed as text labels.
  • The label for each option is shown in the language configured on the web service. If a translation for the configured language is unavailable, the label is displayed in the default language.
  • Each option in the ActiveList has an associated unique integer value that is set to the MetaProperty when selected.
  • Only one option can be selected at a time. Selecting an option updates the MetaProperty value immediately.

Sorting of items in the dropdown:

  • If all options in the ActiveList have unique sort order values, they are displayed in ascending order of these sort order values.
  • If sort orders are not unique, options with the same sort order are sorted in ascending order by their label.

XAML

To enable access to an ActiveList from XAML a new property named SelectiveItems was added to the PropertyViewModel. This property returns the ActiveList if one is configured on the content object; otherwise, it falls back to the SelectiveList defined on the MetaProperty if no ActiveList is available for the content object. Below is an example of how this can be implemented in XAML. For the SelectedItem, it is important to use the PropertyValueToSelectiveItem converter and pass the control’s own ItemsSource path as the ConverterParameter, so that the list can be provided to the converter. This means that no DataTriggers or similar mechanisms are required to switch between ActiveLists and MetaProperty SelectiveLists or to perform any checks.

MAUI

<controls:SfListViewExt
   x:Name="SelectiveList"
   BindingContext="{TemplateBinding BindingContext}"
   ItemSize="40"
   ItemTemplate="{StaticResource PopupSelectiveListItemTemplate}"
   ItemsSource="{Binding SelectiveItems}"
   SelectedItem="{Binding ValueItem.PropertyValue, Mode=OneWay, Converter={StaticResource PropertyValueToSelectiveItem}, ConverterParameter={Binding Source={x:Reference SelectiveList}, Path=ItemsSource}}"
   SelectionBackground="{DynamicResource UBIKAccentColor}"
   SelectionMode="Single"
   Style="{DynamicResource UBIKListView}" />

UWP

<controls:ComboBoxExt
   x:Name="ComboBox"
   Grid.ColumnSpan="2"
   HorizontalAlignment="Stretch"
   DisplayMemberPath="DisplayText"
   ItemsSource="{Binding PropertyViewModel.SelectiveItems}"
   PlaceholderText="{Binding PropertyEdit_PickerPlaceholder, Source={StaticResource AppResources}}"
   SelectedValue="{Binding PropertyValue, Mode=TwoWay}"
   SelectedValuePath="Value"
   Visibility="{Binding PropertyViewModel.ShowComboBox, Converter={StaticResource BoolToVisConverter}}" />

Wiki Under Construction End.PNG