Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Automation / Peers / TextAutomationPeer.cs / 1 / 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
- RelOps.cs
- DispatcherProcessingDisabled.cs
- RoutedCommand.cs
- XXXOnTypeBuilderInstantiation.cs
- XmlNamespaceDeclarationsAttribute.cs
- ContainerVisual.cs
- SystemIPAddressInformation.cs
- AutoSizeComboBox.cs
- NoneExcludedImageIndexConverter.cs
- ListContractAdapter.cs
- Collection.cs
- XmlSchemaGroupRef.cs
- RuleSettingsCollection.cs
- OleAutBinder.cs
- Cursor.cs
- OrderedEnumerableRowCollection.cs
- ClientScriptItem.cs
- DependencyProperty.cs
- StringResourceManager.cs
- SqlCacheDependencyDatabase.cs
- ConsumerConnectionPoint.cs
- SqlAliaser.cs
- DBNull.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- HtmlTernaryTree.cs
- ListDesigner.cs
- ProxyHwnd.cs
- Pointer.cs
- ActivityExecutionContext.cs
- ArrangedElementCollection.cs
- ValidationEventArgs.cs
- StackBuilderSink.cs
- DependentList.cs
- AppLevelCompilationSectionCache.cs
- EntityUtil.cs
- Tablet.cs
- GradientStopCollection.cs
- PropVariant.cs
- Geometry.cs
- EmptyEnumerator.cs
- ReadOnlyCollection.cs
- WebColorConverter.cs
- SettingsPropertyWrongTypeException.cs
- UInt64Storage.cs
- StylusLogic.cs
- OperationDescription.cs
- X509Utils.cs
- FontSizeConverter.cs
- XmlHierarchyData.cs
- MSHTMLHost.cs
- BindingMemberInfo.cs
- CertificateElement.cs
- _ListenerResponseStream.cs
- DataRelationPropertyDescriptor.cs
- ListBoxAutomationPeer.cs
- TextProperties.cs
- TypedDataSourceCodeGenerator.cs
- PingOptions.cs
- EasingKeyFrames.cs
- ListViewTableCell.cs
- ButtonColumn.cs
- QilLiteral.cs
- XmlILIndex.cs
- ConnectionPointCookie.cs
- TextReader.cs
- GrammarBuilderWildcard.cs
- TypeBinaryExpression.cs
- HttpHandlerAction.cs
- HijriCalendar.cs
- DSASignatureDeformatter.cs
- KeyGesture.cs
- SafeBitVector32.cs
- MeshGeometry3D.cs
- XsltContext.cs
- VoiceObjectToken.cs
- Profiler.cs
- SoapProcessingBehavior.cs
- EventEntry.cs
- ExeConfigurationFileMap.cs
- ObjectListCommandCollection.cs
- XmlnsCache.cs
- Debug.cs
- RC2.cs
- SecurityDescriptor.cs
- X509UI.cs
- X500Name.cs
- ObjectNotFoundException.cs
- BaseCodePageEncoding.cs
- OpenTypeLayoutCache.cs
- util.cs
- SoundPlayerAction.cs
- GcHandle.cs
- QueryInterceptorAttribute.cs
- GridViewUpdateEventArgs.cs
- XmlSchemaComplexType.cs
- SemanticValue.cs
- EarlyBoundInfo.cs
- SoapServerMessage.cs
- HttpRuntime.cs
- StringInfo.cs