Esempio n. 1
0
        private void RaiseLiveRegionChangedAutomationEvent(bool isDateDiffMode)
        {
            TextBlock resultTextBlock = isDateDiffMode ? DateDiffAllUnitsResultLabel : DateResultLabel;
            string    automationName  = AutomationProperties.GetName(resultTextBlock);

            TextBlockAutomationPeer.FromElement(resultTextBlock).RaiseAutomationEvent(AutomationEvents.LiveRegionChanged);
        }
Esempio n. 2
0
        public AutomationDelegatingListViewItemAutomationPeer(
            AutomationDelegatingListViewItem listViewItem
            ) : base(listViewItem)
        {
            checkBoxItem = this.GetChildren().OfType <CheckBoxAutomationPeer>().SingleOrDefault();
            if (checkBoxItem != null)
            {
                var toggleButton = ((CheckBox)checkBoxItem.Owner);
                toggleButton.Checked   += Checkbox_CheckChanged;
                toggleButton.Unchecked += Checkbox_CheckChanged;
                return;
            }

            radioButtonItem = this.GetChildren()
                              .OfType <RadioButtonAutomationPeer>()
                              .SingleOrDefault();
            if (radioButtonItem != null)
            {
                var toggleButton = ((RadioButton)radioButtonItem.Owner);
                toggleButton.Checked   += RadioButton_CheckChanged;
                toggleButton.Unchecked += RadioButton_CheckChanged;
                return;
            }

            textBlockItem = this.GetChildren().OfType <TextBlockAutomationPeer>().FirstOrDefault();
        }
Esempio n. 3
0
 private async Task AnnounceNarratorStatus()
 {
     await RunOnUIThreadAsync(CoreDispatcherPriority.Normal, () =>
     {
         TextBlockAutomationPeer peer = new TextBlockAutomationPeer(TextBlockNarratorStatus);
         peer.RaiseAutomationEvent(AutomationEvents.LiveRegionChanged);
     });
 }
        private void TryReadAutomationProperties(StackPanel stackPanel)
        {
            var textblocks = stackPanel?.Children.OfType <TextBlock>();

            if (textblocks != null)
            {
                AutomationPeer peer = null;

                foreach (TextBlock textBlock in textblocks)
                {
                    peer = TextBlockAutomationPeer.FromElement(textBlock);
                    peer?.RaiseAutomationEvent(AutomationEvents.MenuOpened);
                }
            }
        }
Esempio n. 5
0
 public SettingBlockAutomationPeer([NotNull] TextBlock owner)
     : base(owner)
 {
     this.textBlockAutomationPeer = new TextBlockAutomationPeer(owner);
 }
        /// <summary>
        /// Gets the <see cref="AutomationPeer"/>s from the <see cref="DataFormAutomationPeer"/>.
        /// </summary>
        private void GetChildAutomationPeers()
        {
            this._firstItemButtonAutomationPeer    = null;
            this._previousItemButtonAutomationPeer = null;
            this._nextItemButtonAutomationPeer     = null;
            this._lastItemButtonAutomationPeer     = null;
            this._editButtonAutomationPeer         = null;
            this._newItemButtonAutomationPeer      = null;
            this._deleteItemButtonAutomationPeer   = null;
            this._commitButtonAutomationPeer       = null;
            this._cancelButtonAutomationPeer       = null;

            this._labelAutomationPeers        = new List <TextBlockAutomationPeer>();
            this._inputControlAutomationPeers = new List <AutomationPeer>();
            this._descriptionAutomationPeers  = new List <DescriptionViewerAutomationPeer>();

            List <AutomationPeer> automationPeers = this._dataFormAutomationPeer.GetChildren();

            foreach (AutomationPeer automationPeer in automationPeers)
            {
                string className = automationPeer.GetClassName();

                if (className == "Button")
                {
                    ButtonAutomationPeer buttonAutomationPeer = automationPeer as ButtonAutomationPeer;
                    Assert.IsNotNull(buttonAutomationPeer);

                    string automationId = automationPeer.GetAutomationId();

                    switch (automationId)
                    {
                    case "FirstItemButton":
                        this._firstItemButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "PreviousItemButton":
                        this._previousItemButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "NextItemButton":
                        this._nextItemButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "LastItemButton":
                        this._lastItemButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "EditButton":
                        this._editButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "NewItemButton":
                        this._newItemButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "DeleteItemButton":
                        this._deleteItemButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "CommitButton":
                        this._commitButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    case "CancelButton":
                        this._cancelButtonAutomationPeer = buttonAutomationPeer;
                        break;

                    default:
                        Assert.Fail("Unexpected ButtonAutomationPeer.");
                        break;
                    }
                }
                else if (className == "TextBlock")
                {
                    this._changeIndicatorAutomationPeer = automationPeer as TextBlockAutomationPeer;
                }
                else if (className == "ScrollViewer")
                {
                    this._scrollViewerAutomationPeer = automationPeer as ScrollViewerAutomationPeer;
                    Assert.IsNotNull(this._scrollViewerAutomationPeer);
                    List <AutomationPeer> formAutomationPeers = this._scrollViewerAutomationPeer.GetChildren();

                    for (int i = 0; i < formAutomationPeers.Count; i++)
                    {
                        if (i % 3 == 0)
                        {
                            TextBlockAutomationPeer textBlockAutomationPeer = formAutomationPeers[i] as TextBlockAutomationPeer;

                            if (textBlockAutomationPeer != null)
                            {
                                this._labelAutomationPeers.Add(textBlockAutomationPeer);
                            }
                        }
                        else if (i % 3 == 1)
                        {
                            this._inputControlAutomationPeers.Add(formAutomationPeers[i]);
                        }
                        else
                        {
                            DescriptionViewerAutomationPeer descriptionViewerAutomationPeer = formAutomationPeers[i] as DescriptionViewerAutomationPeer;

                            if (descriptionViewerAutomationPeer != null)
                            {
                                this._descriptionAutomationPeers.Add(descriptionViewerAutomationPeer);
                            }
                        }
                    }
                }
            }
        }