Last modified on 21 December 2018, at 08:32

XAML Changes in UBIK WinX 3.5

Revision as of 08:32, 21 December 2018 by LGE (Talk | contribs)

Due to the changes we made in the UBIK® WinX client, certain modifications in the customizable XAML templates are required. Please refer to each individual change to see whether your existing templates might still be compatible.

  • If not compatible, you must modify those templates or the relevant features will no longer function;
  • If compatible, your existing templates can still be used. Nevertheless, we recommend updating them as soon as possible since all future bugfixes, improvements, etc. will not apply otherwise.

Filtering by expressions

Customizers can define expressions in XAML to get different filtered lists of content (objects, properties, etc.). This was done previously using the CollectionToViewConverter. It is now replaced by the ListCollectionView. Existing XAMLs are still compatible.

Before 3.5

<DataTemplate ...
   xmlns:converters="using:UBIK.WinX.Converters">
    <Grid>
        <Grid.Resources>
            <x:String x:Key="MetaClassExpression">Item.Content.MetaUID.ToString().ToLower()==&quot;D09E0F2E-1D2C-49C5-8285-585E2C83280C&quot;</x:String>
            <converters:CollectionToViewConverter x:Key="FilterByMetaClass" Source="{Binding Children.Items}" />
        </Grid.Resources>
        <ListView ...
           ItemsSource="{Binding Source={StaticResource MetaClassExpression}, Converter={StaticResource FilterByMetaClass}}"/>
    </Grid>
</DataTemplate>

After 3.5

<DataTemplate ...
   xmlns:cv="using:UBIK.WinX.UI.CollectionView">
    <Grid>
        <Grid.Resources>
            <x:String x:Key="MetaClassExpression">Item.Content.MetaUID.ToString().ToLower()==&quot;D09E0F2E-1D2C-49C5-8285-585E2C83280C&quot;</x:String>
            <cv:ListCollectionView x:Key="FilterByMetaClass" Expression="{StaticResource MetaClassExpression}" ItemsSource="{Binding Children.Items}" />
        </Grid.Resources>
        <ListView ...
           ItemsSource="{StaticResource FilterByMetaClass}"/>
    </Grid>
</DataTemplate>