protected void OnProviderBehaviorSet(ProviderBehaviorEventArgs args) { if (ProviderBehaviorSet != null) { ProviderBehaviorSet(this, args); } }
private void OnProviderBehaviorSet(object sender, ProviderBehaviorEventArgs eventArgs) { if (AutomationInteropProvider.ClientsAreListening == false) { return; } else if ((eventArgs.Replaced == true && eventArgs.Behavior == null) || (eventArgs.Replaced == false && eventArgs.Behavior != null)) { AutomationProperty property = null; if (eventArgs.Pattern == DockPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsDockPatternAvailableProperty; } else if (eventArgs.Pattern == ExpandCollapsePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsExpandCollapsePatternAvailableProperty; } else if (eventArgs.Pattern == GridItemPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsGridItemPatternAvailableProperty; } else if (eventArgs.Pattern == GridPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsGridPatternAvailableProperty; } else if (eventArgs.Pattern == InvokePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsInvokePatternAvailableProperty; } else if (eventArgs.Pattern == LegacyIAccessiblePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsLegacyIAccessiblePatternAvailableProperty; } else if (eventArgs.Pattern == MultipleViewPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsMultipleViewPatternAvailableProperty; } else if (eventArgs.Pattern == RangeValuePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsRangeValuePatternAvailableProperty; } else if (eventArgs.Pattern == ScrollItemPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsScrollItemPatternAvailableProperty; } else if (eventArgs.Pattern == ScrollPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsScrollPatternAvailableProperty; } else if (eventArgs.Pattern == SelectionItemPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsSelectionItemPatternAvailableProperty; } else if (eventArgs.Pattern == SelectionPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsSelectionPatternAvailableProperty; } else if (eventArgs.Pattern == TableItemPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsTableItemPatternAvailableProperty; } else if (eventArgs.Pattern == TablePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsTablePatternAvailableProperty; } else if (eventArgs.Pattern == TextPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsTextPatternAvailableProperty; } else if (eventArgs.Pattern == TogglePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsTogglePatternAvailableProperty; } else if (eventArgs.Pattern == TransformPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsTransformPatternAvailableProperty; } else if (eventArgs.Pattern == ValuePatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsValuePatternAvailableProperty; } else if (eventArgs.Pattern == WindowPatternIdentifiers.Pattern) { property = AutomationElementIdentifiers.IsWindowPatternAvailableProperty; } if (property == null) //This never should happen, theoretically { return; } bool?val = Provider.GetPropertyValue(property.Id) as bool?; // This should never happen. if (val == null) { return; } bool newValue = val ?? false; AutomationPropertyChangedEventArgs args = new AutomationPropertyChangedEventArgs(property, !newValue, newValue); AutomationInteropProvider.RaiseAutomationPropertyChangedEvent(Provider, args); } }
private void OnProviderBehaviorSet(object sender, ProviderBehaviorEventArgs args) { RaiseAutomationPropertyChangedEvent(); }