Ejemplo n.º 1
0
        public static bool Compare(object sourceValue, object targetValue, ITriggerValueComparer comparer)
        {
            var actualComparer = comparer ?? XamlValueComparer.TriggerComparer;

            var actualSourceValue = sourceValue;
            var actualTargetValue = XamlStaticConverter.ConvertValue(targetValue, sourceValue?.GetType() ?? typeof(object));

            return(actualComparer.Compare(actualSourceValue, actualTargetValue));
        }
Ejemplo n.º 2
0
        public static TriggerState UpdateState(InteractivityObject interactivityObject, InteractivityProperty sourceProperty, ref object sourceStore, InteractivityProperty valueProperty, ref object valueStore, ITriggerValueComparer comparer)
        {
            var actualComparer = comparer ?? XamlValueComparer.TriggerComparer;

            var sourceValue = interactivityObject.GetValue(sourceProperty, ref sourceStore);
            var value       = interactivityObject.CacheConvert(valueProperty, sourceValue?.GetType(), ref valueStore);

            return(actualComparer.Compare(sourceValue, value) ? TriggerState.Opened : TriggerState.Closed);
        }