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
- ToggleProviderWrapper.cs
- HandlerWithFactory.cs
- ConvertEvent.cs
- SequentialUshortCollection.cs
- ExtendedPropertyInfo.cs
- FilteredReadOnlyMetadataCollection.cs
- Win32.cs
- ParameterBuilder.cs
- BigInt.cs
- CodeMemberEvent.cs
- JoinSymbol.cs
- ObjectParameter.cs
- Brush.cs
- SelectionChangedEventArgs.cs
- SiteMapHierarchicalDataSourceView.cs
- KeyValuePairs.cs
- OdbcDataReader.cs
- WmlPageAdapter.cs
- ObjectDataSourceSelectingEventArgs.cs
- XmlSchemaSequence.cs
- ResourceExpressionBuilder.cs
- MetadataUtilsSmi.cs
- PeerCollaborationPermission.cs
- TextDecorationLocationValidation.cs
- CodeBlockBuilder.cs
- Geometry3D.cs
- DataListCommandEventArgs.cs
- MethodBuilderInstantiation.cs
- XmlSignificantWhitespace.cs
- AppDomainFactory.cs
- BitmapEffectGeneralTransform.cs
- MouseEventArgs.cs
- ObjectDisposedException.cs
- TypefaceMap.cs
- TextBox.cs
- DbProviderFactoriesConfigurationHandler.cs
- InkCanvasAutomationPeer.cs
- WebPartConnectionCollection.cs
- ComPlusAuthorization.cs
- ObjectDataSourceSelectingEventArgs.cs
- FixedPageProcessor.cs
- SplitContainer.cs
- SessionEndedEventArgs.cs
- DataGridCommandEventArgs.cs
- FormViewInsertEventArgs.cs
- SecurityContextSecurityTokenAuthenticator.cs
- ItemContainerPattern.cs
- BuildDependencySet.cs
- CompilerCollection.cs
- EventSourceCreationData.cs
- ChannelServices.cs
- _LoggingObject.cs
- AdapterUtil.cs
- ScopedKnownTypes.cs
- PrefixQName.cs
- PrintPageEvent.cs
- ITreeGenerator.cs
- RsaSecurityToken.cs
- MembershipSection.cs
- TypedTableBaseExtensions.cs
- CallContext.cs
- MarkupObject.cs
- MatrixUtil.cs
- CacheChildrenQuery.cs
- ProfileInfo.cs
- InvokeMethodActivity.cs
- InvokeGenerator.cs
- HandlerBase.cs
- ReflectionPermission.cs
- PointLight.cs
- StreamSecurityUpgradeInitiatorAsyncResult.cs
- InternalRelationshipCollection.cs
- coordinatorscratchpad.cs
- ProxyGenerationError.cs
- PassportPrincipal.cs
- XmlUrlResolver.cs
- CommandPlan.cs
- SqlConnectionPoolGroupProviderInfo.cs
- ShapeTypeface.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- Style.cs
- DataColumnMappingCollection.cs
- QualifiedCellIdBoolean.cs
- PerformanceCounter.cs
- StorageTypeMapping.cs
- ChtmlTextWriter.cs
- ColorPalette.cs
- ListViewSortEventArgs.cs
- Literal.cs
- StaticDataManager.cs
- CodeSubDirectory.cs
- Documentation.cs
- PreservationFileWriter.cs
- Sentence.cs
- AsymmetricAlgorithm.cs
- ImportCatalogPart.cs
- DotExpr.cs
- CqlLexerHelpers.cs
- JoinCqlBlock.cs
- NavigationFailedEventArgs.cs