Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / System / Windows / Automation / Peers / FrameworkElementAutomationPeer.cs / 1 / 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; } /// override protected AutomationPeer GetLabeledByCore() { AutomationPeer labelPeer = base.GetLabeledByCore(); if (labelPeer == null) { Label label = Label.GetLabeledBy(Owner); if (label != null) return label.GetAutomationPeer(); } return null; } } } // 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; } /// override protected AutomationPeer GetLabeledByCore() { AutomationPeer labelPeer = base.GetLabeledByCore(); if (labelPeer == null) { Label label = Label.GetLabeledBy(Owner); if (label != null) return label.GetAutomationPeer(); } return null; } } } // 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
- CacheRequest.cs
- WebPartEditorOkVerb.cs
- RuleInfoComparer.cs
- ProfilePropertyNameValidator.cs
- SqlColumnizer.cs
- ResourceReferenceKeyNotFoundException.cs
- SourceItem.cs
- BigInt.cs
- ListViewDeletedEventArgs.cs
- PageAction.cs
- TreeViewDesigner.cs
- EncoderFallback.cs
- XmlQualifiedNameTest.cs
- MetadataCache.cs
- RequestNavigateEventArgs.cs
- TimeSpanMinutesConverter.cs
- SerializationException.cs
- HashCodeCombiner.cs
- MetadataArtifactLoaderFile.cs
- ConnectionsZone.cs
- SafeNativeMethods.cs
- StorageMappingItemCollection.cs
- UniformGrid.cs
- GeometryCombineModeValidation.cs
- ObjectStateManager.cs
- DeploymentSectionCache.cs
- MultiDataTrigger.cs
- RuntimeVariableList.cs
- ToolboxService.cs
- StrokeNode.cs
- CancelEventArgs.cs
- CustomCredentialPolicy.cs
- DataGridColumn.cs
- ListViewSelectEventArgs.cs
- OdbcConnection.cs
- CodeObjectCreateExpression.cs
- QilName.cs
- StateBag.cs
- ValidatingPropertiesEventArgs.cs
- GifBitmapEncoder.cs
- DataStreamFromComStream.cs
- IItemProperties.cs
- XmlSignatureManifest.cs
- DateTimeOffsetStorage.cs
- AnchoredBlock.cs
- Slider.cs
- ReliableMessagingVersionConverter.cs
- TraceXPathNavigator.cs
- EventArgs.cs
- RotateTransform.cs
- PageSettings.cs
- PageAsyncTask.cs
- Calendar.cs
- GridProviderWrapper.cs
- Sql8ConformanceChecker.cs
- OdbcError.cs
- ApplicationFileCodeDomTreeGenerator.cs
- ProfileEventArgs.cs
- StylusPointPropertyId.cs
- BaseHashHelper.cs
- SpeechRecognizer.cs
- TopClause.cs
- PnrpPeerResolver.cs
- DataGridViewCellConverter.cs
- AddInAttribute.cs
- ZipIOBlockManager.cs
- EdmValidator.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- UserControlBuildProvider.cs
- SettingsPropertyValueCollection.cs
- NumberFormatInfo.cs
- BinaryUtilClasses.cs
- KnowledgeBase.cs
- PictureBox.cs
- ToggleButtonAutomationPeer.cs
- Asn1IntegerConverter.cs
- SafeFileMappingHandle.cs
- DbConnectionHelper.cs
- DeclarativeCatalogPart.cs
- PrefixQName.cs
- WebPartTracker.cs
- WebPartConnectionsEventArgs.cs
- SendActivityDesigner.cs
- RIPEMD160Managed.cs
- KeyConstraint.cs
- EdmComplexPropertyAttribute.cs
- EastAsianLunisolarCalendar.cs
- ApplyImportsAction.cs
- XmlHierarchicalEnumerable.cs
- DescendentsWalker.cs
- ConfigurationManager.cs
- MembershipSection.cs
- RelationshipDetailsRow.cs
- FormsAuthenticationCredentials.cs
- LogEntryHeaderv1Deserializer.cs
- GcHandle.cs
- ViewGenerator.cs
- DataGridViewButtonCell.cs
- JumpPath.cs
- CookieParameter.cs