Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / FrameworkElementAutomationPeer.cs / 1305600 / FrameworkElementAutomationPeer.cs
using System; using System.Runtime.InteropServices; using System.Security; using System.Text; using System.Windows; using System.Windows.Automation.Provider; using System.Windows.Controls; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Markup; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class FrameworkElementAutomationPeer : UIElementAutomationPeer { /// public FrameworkElementAutomationPeer(FrameworkElement owner) : base(owner) { } /// protected override string GetAutomationIdCore() { // 1. fetch AutomationProperties.AutomationIdProperty string result = base.GetAutomationIdCore(); if (string.IsNullOrEmpty(result)) { // 2. fetch x:Uid FrameworkElement owner = (FrameworkElement)Owner; result = Owner.Uid; if (string.IsNullOrEmpty(result)) { // 3. fetch FrameworkElement.NameProperty result = owner.Name; } } return result ?? string.Empty; } /// override protected string GetNameCore() { string result = base.GetNameCore(); if (string.IsNullOrEmpty(result)) { AutomationPeer labelAutomationPeer = GetLabeledByCore(); if (labelAutomationPeer != null) result = labelAutomationPeer.GetName(); if (string.IsNullOrEmpty(result)) result = ((FrameworkElement)Owner).GetPlainText(); } return result ?? string.Empty; } /// protected override string GetHelpTextCore() { string result = base.GetHelpTextCore(); if (string.IsNullOrEmpty(result)) { object toolTip = ((FrameworkElement)Owner).ToolTip; if (toolTip != null) { result = toolTip as string; if (string.IsNullOrEmpty(result)) { FrameworkElement toolTipElement = toolTip as FrameworkElement; if (toolTipElement != null) result = toolTipElement.GetPlainText(); } } } return result ?? String.Empty; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Runtime.InteropServices; using System.Security; using System.Text; using System.Windows; using System.Windows.Automation.Provider; using System.Windows.Controls; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Markup; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class FrameworkElementAutomationPeer : UIElementAutomationPeer { /// public FrameworkElementAutomationPeer(FrameworkElement owner) : base(owner) { } /// protected override string GetAutomationIdCore() { // 1. fetch AutomationProperties.AutomationIdProperty string result = base.GetAutomationIdCore(); if (string.IsNullOrEmpty(result)) { // 2. fetch x:Uid FrameworkElement owner = (FrameworkElement)Owner; result = Owner.Uid; if (string.IsNullOrEmpty(result)) { // 3. fetch FrameworkElement.NameProperty result = owner.Name; } } return result ?? string.Empty; } /// override protected string GetNameCore() { string result = base.GetNameCore(); if (string.IsNullOrEmpty(result)) { AutomationPeer labelAutomationPeer = GetLabeledByCore(); if (labelAutomationPeer != null) result = labelAutomationPeer.GetName(); if (string.IsNullOrEmpty(result)) result = ((FrameworkElement)Owner).GetPlainText(); } return result ?? string.Empty; } /// protected override string GetHelpTextCore() { string result = base.GetHelpTextCore(); if (string.IsNullOrEmpty(result)) { object toolTip = ((FrameworkElement)Owner).ToolTip; if (toolTip != null) { result = toolTip as string; if (string.IsNullOrEmpty(result)) { FrameworkElement toolTipElement = toolTip as FrameworkElement; if (toolTipElement != null) result = toolTipElement.GetPlainText(); } } } return result ?? String.Empty; } } } // 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
- EmptyEnumerator.cs
- LeftCellWrapper.cs
- NonSerializedAttribute.cs
- Journal.cs
- HttpCacheParams.cs
- EventlogProvider.cs
- Int16Animation.cs
- DataServiceProcessingPipeline.cs
- Simplifier.cs
- EntityDesignerBuildProvider.cs
- ResourceWriter.cs
- AbandonedMutexException.cs
- SQLInt64Storage.cs
- SoundPlayer.cs
- SimpleType.cs
- ConfigurationManagerHelperFactory.cs
- RegexTypeEditor.cs
- DesignerSerializationOptionsAttribute.cs
- WebPartConnectionsCloseVerb.cs
- TextEditorTables.cs
- Viewport3DVisual.cs
- DocumentPropertiesDialog.cs
- ParentUndoUnit.cs
- FloatAverageAggregationOperator.cs
- FileDialog.cs
- ExpressionBindings.cs
- Size.cs
- XmlSchemaException.cs
- DesignerSerializationOptionsAttribute.cs
- CollectionType.cs
- SmiContext.cs
- XmlDownloadManager.cs
- CodeMethodReturnStatement.cs
- DataSourceUtil.cs
- entityreference_tresulttype.cs
- GenericIdentity.cs
- Single.cs
- XmlDataLoader.cs
- StringWriter.cs
- ToolStripContentPanelDesigner.cs
- CommonObjectSecurity.cs
- GridViewDeletedEventArgs.cs
- bidPrivateBase.cs
- DataGridItemCollection.cs
- PersonalizationStateInfo.cs
- GeneralTransformGroup.cs
- SecurityTokenValidationException.cs
- DSASignatureFormatter.cs
- Options.cs
- PingReply.cs
- Debug.cs
- RotationValidation.cs
- BoolExpression.cs
- VariableExpressionConverter.cs
- TypedRowHandler.cs
- Solver.cs
- XmlNamespaceManager.cs
- IncrementalReadDecoders.cs
- OpenCollectionAsyncResult.cs
- VideoDrawing.cs
- HelpPage.cs
- ScalarType.cs
- EventProviderWriter.cs
- DataTableCollection.cs
- BinaryWriter.cs
- Int32Animation.cs
- PromptStyle.cs
- TableCellCollection.cs
- CodeSnippetTypeMember.cs
- XamlGridLengthSerializer.cs
- Misc.cs
- ResourcePermissionBaseEntry.cs
- ExecutionProperties.cs
- DeferredSelectedIndexReference.cs
- XPathAxisIterator.cs
- LocatorPart.cs
- TextViewBase.cs
- util.cs
- ReliabilityContractAttribute.cs
- LogoValidationException.cs
- HwndSubclass.cs
- PasswordPropertyTextAttribute.cs
- OdbcConnectionPoolProviderInfo.cs
- MultiSelector.cs
- PointConverter.cs
- TextFormatterImp.cs
- UserCancellationException.cs
- ChildrenQuery.cs
- Model3DGroup.cs
- StrokeIntersection.cs
- XmlReturnReader.cs
- ClientSettingsStore.cs
- BufferedGraphicsContext.cs
- RuleSettingsCollection.cs
- TypePresenter.xaml.cs
- ToolStripItemEventArgs.cs
- TextReader.cs
- BamlLocalizationDictionary.cs
- PolicyException.cs
- ScrollBar.cs