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
- SharedPerformanceCounter.cs
- TypeExtensions.cs
- DataBinder.cs
- DataExpression.cs
- TextTreeExtractElementUndoUnit.cs
- MetabaseSettings.cs
- _KerberosClient.cs
- SqlParameter.cs
- LicFileLicenseProvider.cs
- XmlHierarchicalEnumerable.cs
- LogPolicy.cs
- HtmlMeta.cs
- SystemFonts.cs
- TypeDescriptorFilterService.cs
- WaitHandle.cs
- FormViewInsertEventArgs.cs
- WebPartCollection.cs
- DateTimeConstantAttribute.cs
- WebBrowserUriTypeConverter.cs
- ErrorRuntimeConfig.cs
- SmtpFailedRecipientException.cs
- KeyGesture.cs
- InputScope.cs
- AutomationElementIdentifiers.cs
- FaultContractAttribute.cs
- DbUpdateCommandTree.cs
- AssociationSetMetadata.cs
- TypeDependencyAttribute.cs
- Menu.cs
- FlowSwitchLink.cs
- ProcessInfo.cs
- XmlElementList.cs
- Pkcs9Attribute.cs
- CTreeGenerator.cs
- SessionEndingCancelEventArgs.cs
- X509ChainElement.cs
- Bitmap.cs
- Command.cs
- SymmetricAlgorithm.cs
- GridViewRowPresenterBase.cs
- UIElementCollection.cs
- MetafileHeaderEmf.cs
- RenderData.cs
- TextBox.cs
- BamlResourceContent.cs
- AuthenticationConfig.cs
- CultureInfoConverter.cs
- SmtpReplyReader.cs
- ZipIOLocalFileHeader.cs
- Panel.cs
- CodeEntryPointMethod.cs
- WebServiceMethodData.cs
- DocumentPageHost.cs
- ComponentEditorPage.cs
- BatchWriter.cs
- SpeechSeg.cs
- CopyOfAction.cs
- TemplatedMailWebEventProvider.cs
- WindowsIPAddress.cs
- WebEvents.cs
- WriteFileContext.cs
- DataGridTablesFactory.cs
- Ipv6Element.cs
- WindowsSecurityTokenAuthenticator.cs
- PropertyChangeTracker.cs
- ContainerUIElement3D.cs
- QuarticEase.cs
- StateWorkerRequest.cs
- DiagnosticTraceSchemas.cs
- XmlSchemaNotation.cs
- RecognitionResult.cs
- DesignerAutoFormatStyle.cs
- WebPartCollection.cs
- ObfuscationAttribute.cs
- EventRoute.cs
- ErrorProvider.cs
- FragmentQuery.cs
- Polygon.cs
- CodeDelegateCreateExpression.cs
- DiscoveryClientBindingElement.cs
- SHA384.cs
- UrlParameterReader.cs
- WorkflowTransactionOptions.cs
- SimpleRecyclingCache.cs
- HttpContext.cs
- DataTransferEventArgs.cs
- ReflectionHelper.cs
- HttpAsyncResult.cs
- Style.cs
- ZoneButton.cs
- ArcSegment.cs
- ColumnResizeAdorner.cs
- Selection.cs
- HttpCapabilitiesSectionHandler.cs
- DecodeHelper.cs
- ConfigurationPropertyCollection.cs
- ControlsConfig.cs
- PageScaling.cs
- LeftCellWrapper.cs
- ProofTokenCryptoHandle.cs