Esempio n. 1
0
            protected override void OnDetach()
            {
                foreach (var condition in this.attachedConditions)
                {
                    condition.DetachTo();
                    condition.ConditionChanged -= this.OnConditionChanged;
                }

                this.attachedConditions.Clear();
                this.triggerSource       = null;
                this.validConditionCount = 0;
            }
Esempio n. 2
0
            protected override void OnAttachTo()
            {
                triggerSource = this.GetTypedTriggerSource <MultiTrigger>();
                foreach (var condition in triggerSource.Conditions)
                {
                    var associatedCondition = condition.AttachTo(this.Bindable);
                    associatedCondition.ConditionChanged += this.OnConditionChanged;
                    this.attachedConditions.Add(associatedCondition);

                    if (associatedCondition.IsValid)
                    {
                        validConditionCount++;
                    }
                }

                this.IsActive = validConditionCount == this.triggerSource.Conditions.Count;
            }