Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / TextAutomationPeer.cs / 1305600 / TextAutomationPeer.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: ContentTextElementAutomationPeer.cs // // Description: Base class for AutomationPeers associated with TextPattern. // //--------------------------------------------------------------------------- using System.Collections.Generic; // Listusing System.Windows.Automation.Provider; // IRawElementProviderSimple using System.Windows.Documents; // ITextPointer namespace System.Windows.Automation.Peers { /// /// Base class for AutomationPeers associated with TextPattern. /// public abstract class TextAutomationPeer : FrameworkElementAutomationPeer { ////// Constructor. /// protected TextAutomationPeer(FrameworkElement owner) : base(owner) {} ////// GetNameCore will return a value matching (in priority order) /// /// 1. Automation.Name /// 2. GetLabeledBy.Name /// 3. String.Empty /// /// This differs from the base implementation in that we must /// never return GetPlainText() . /// override protected string GetNameCore() { string result = AutomationProperties.GetName(this.Owner); if (string.IsNullOrEmpty(result)) { AutomationPeer labelAutomationPeer = GetLabeledByCore(); if (labelAutomationPeer != null) { result = labelAutomationPeer.GetName(); } } return result ?? string.Empty; } ////// Maps AutomationPeer to provider object. /// internal new IRawElementProviderSimple ProviderFromPeer(AutomationPeer peer) { return base.ProviderFromPeer(peer); } ////// Maps automation provider to DependencyObject. /// internal DependencyObject ElementFromProvider(IRawElementProviderSimple provider) { DependencyObject element = null; AutomationPeer peer = PeerFromProvider(provider); if (peer is UIElementAutomationPeer) { element = ((UIElementAutomationPeer)peer).Owner; } else if (peer is ContentElementAutomationPeer) { element = ((ContentElementAutomationPeer)peer).Owner; } return element; } ////// Gets collection of AutomationPeers for given text range. /// internal abstract ListGetAutomationPeersFromRange(ITextPointer start, ITextPointer end); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: ContentTextElementAutomationPeer.cs // // Description: Base class for AutomationPeers associated with TextPattern. // //--------------------------------------------------------------------------- using System.Collections.Generic; // List using System.Windows.Automation.Provider; // IRawElementProviderSimple using System.Windows.Documents; // ITextPointer namespace System.Windows.Automation.Peers { /// /// Base class for AutomationPeers associated with TextPattern. /// public abstract class TextAutomationPeer : FrameworkElementAutomationPeer { ////// Constructor. /// protected TextAutomationPeer(FrameworkElement owner) : base(owner) {} ////// GetNameCore will return a value matching (in priority order) /// /// 1. Automation.Name /// 2. GetLabeledBy.Name /// 3. String.Empty /// /// This differs from the base implementation in that we must /// never return GetPlainText() . /// override protected string GetNameCore() { string result = AutomationProperties.GetName(this.Owner); if (string.IsNullOrEmpty(result)) { AutomationPeer labelAutomationPeer = GetLabeledByCore(); if (labelAutomationPeer != null) { result = labelAutomationPeer.GetName(); } } return result ?? string.Empty; } ////// Maps AutomationPeer to provider object. /// internal new IRawElementProviderSimple ProviderFromPeer(AutomationPeer peer) { return base.ProviderFromPeer(peer); } ////// Maps automation provider to DependencyObject. /// internal DependencyObject ElementFromProvider(IRawElementProviderSimple provider) { DependencyObject element = null; AutomationPeer peer = PeerFromProvider(provider); if (peer is UIElementAutomationPeer) { element = ((UIElementAutomationPeer)peer).Owner; } else if (peer is ContentElementAutomationPeer) { element = ((ContentElementAutomationPeer)peer).Owner; } return element; } ////// Gets collection of AutomationPeers for given text range. /// internal abstract ListGetAutomationPeersFromRange(ITextPointer start, ITextPointer end); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Margins.cs
- GridViewRowCollection.cs
- AspCompat.cs
- XmlSchemaImporter.cs
- OrderPreservingSpoolingTask.cs
- DesignerView.Commands.cs
- KoreanCalendar.cs
- HtmlSelectionListAdapter.cs
- ProfessionalColorTable.cs
- BamlBinaryWriter.cs
- PropertyGridCommands.cs
- FileDialog.cs
- _AutoWebProxyScriptHelper.cs
- FontSourceCollection.cs
- DebuggerAttributes.cs
- PromptBuilder.cs
- AnyReturnReader.cs
- Set.cs
- TemplateXamlTreeBuilder.cs
- CompleteWizardStep.cs
- ElementAtQueryOperator.cs
- activationcontext.cs
- Configuration.cs
- UndoUnit.cs
- TreeViewDesigner.cs
- RegistryKey.cs
- ObjectNotFoundException.cs
- SequentialOutput.cs
- DataMisalignedException.cs
- VectorValueSerializer.cs
- SqlConnection.cs
- EncoderExceptionFallback.cs
- LOSFormatter.cs
- Currency.cs
- XMLSyntaxException.cs
- DebugControllerThread.cs
- CharacterString.cs
- SafeHandles.cs
- SerializationInfo.cs
- ListBoxItem.cs
- ReadWriteControlDesigner.cs
- UpdatePanelControlTrigger.cs
- FontUnit.cs
- ButtonRenderer.cs
- XmlUTF8TextWriter.cs
- DataShape.cs
- FileAuthorizationModule.cs
- Ipv6Element.cs
- NativeMethods.cs
- MemberHolder.cs
- SqlDataSourceSelectingEventArgs.cs
- AutoScrollHelper.cs
- LocalIdKeyIdentifierClause.cs
- Accessible.cs
- RelationshipConverter.cs
- ValidatorCollection.cs
- MetadataItemEmitter.cs
- EditorPartChrome.cs
- Compress.cs
- ConfigsHelper.cs
- DataTableReader.cs
- StandardOleMarshalObject.cs
- X509Extension.cs
- ExpressionList.cs
- MobileUITypeEditor.cs
- SizeAnimationClockResource.cs
- TypeGeneratedEventArgs.cs
- Parsers.cs
- OpenTypeCommon.cs
- BackgroundFormatInfo.cs
- MetadataArtifactLoaderComposite.cs
- GeneralTransformGroup.cs
- OletxTransactionFormatter.cs
- SimpleType.cs
- SystemIPAddressInformation.cs
- selecteditemcollection.cs
- SecurityContext.cs
- CompositeDesignerAccessibleObject.cs
- Location.cs
- HwndSourceKeyboardInputSite.cs
- RtfToXamlLexer.cs
- X509ChainPolicy.cs
- ThreadStaticAttribute.cs
- MatrixCamera.cs
- Substitution.cs
- PrimitiveCodeDomSerializer.cs
- ActivityAction.cs
- SingleConverter.cs
- DependencyPropertyAttribute.cs
- XMLDiffLoader.cs
- TypefaceMap.cs
- XmlNode.cs
- XmlSchemaElement.cs
- HighContrastHelper.cs
- _DisconnectOverlappedAsyncResult.cs
- ThicknessAnimationUsingKeyFrames.cs
- Vector3DAnimation.cs
- ArrayWithOffset.cs
- DomainUpDown.cs
- DoubleAnimationBase.cs