Wrappers Registry

Wrappers are not registered automatically, you need to create a static method with PropertiesRegistry and Preserve attributes to register them with PropertyWrappers<TValue>.Add(IWrapper<TValue> wrapper) method.

If you do not want some property controlled by Theme Target in any way then you can use PropertyWrappers<TValue>.AddIgnore(Type component, string property) method to do this.

[PropertiesRegistry, Preserve]
public static void AddWrappers()
{
        PropertyWrappers<Color>.Add(new CustomEffectColorOn());
        PropertyWrappers<Color>.Add(new CustomEffectColorOff());

        PropertyWrappers<Color>.AddIgnore(typeof(ListViewCustom<Color>), nameof(ListViewCustom<Color>.SelectedItem));
}