Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- ZipIOLocalFileDataDescriptor.cs
- NavigatorOutput.cs
- DataListItemCollection.cs
- TextBoxBase.cs
- SvcFileManager.cs
- UrlPath.cs
- BitmapEffectInputData.cs
- DynamicPhysicalDiscoSearcher.cs
- QilSortKey.cs
- dataprotectionpermissionattribute.cs
- ResourceSet.cs
- PointLight.cs
- CodeVariableDeclarationStatement.cs
- HybridObjectCache.cs
- DataTableReader.cs
- VisualStyleInformation.cs
- PrinterSettings.cs
- XmlComplianceUtil.cs
- Animatable.cs
- CollectionViewSource.cs
- CategoryGridEntry.cs
- XmlText.cs
- TableItemProviderWrapper.cs
- WriterOutput.cs
- StatusBarDesigner.cs
- ManageRequest.cs
- ConvertEvent.cs
- UIElement3D.cs
- DataErrorValidationRule.cs
- LinkConverter.cs
- infer.cs
- XmlFormatReaderGenerator.cs
- RemoteArgument.cs
- PreProcessInputEventArgs.cs
- UpdateDelegates.Generated.cs
- EntityDataSourceWrapper.cs
- AmbiguousMatchException.cs
- Point3DAnimation.cs
- DataListItemEventArgs.cs
- TreeNodeCollectionEditor.cs
- ServiceDesigner.cs
- XmlRawWriterWrapper.cs
- DbProviderFactory.cs
- controlskin.cs
- newinstructionaction.cs
- FormViewPageEventArgs.cs
- StringKeyFrameCollection.cs
- GeometryCollection.cs
- FixedSOMSemanticBox.cs
- WorkflowQueueInfo.cs
- ToolboxItemImageConverter.cs
- CookieParameter.cs
- PackageDigitalSignatureManager.cs
- PriorityChain.cs
- BehaviorEditorPart.cs
- Select.cs
- GridEntryCollection.cs
- MarkerProperties.cs
- UriWriter.cs
- TimeoutHelper.cs
- DataGridBeginningEditEventArgs.cs
- TriState.cs
- SapiRecoContext.cs
- XmlWriterDelegator.cs
- DbProviderServices.cs
- HtmlTableCell.cs
- SafeNativeMethodsMilCoreApi.cs
- ComponentTray.cs
- RegexCapture.cs
- TabItemAutomationPeer.cs
- Delegate.cs
- WindowsAuthenticationModule.cs
- ConditionalAttribute.cs
- ScrollPatternIdentifiers.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- InputBinder.cs
- DataGridViewImageCell.cs
- XmlProcessingInstruction.cs
- ObjectListShowCommandsEventArgs.cs
- LogExtent.cs
- DrawingImage.cs
- BuiltInPermissionSets.cs
- DataGridItem.cs
- QueryOutputWriterV1.cs
- Trace.cs
- OutputCacheProfileCollection.cs
- Crypto.cs
- SqlClientFactory.cs
- MemberDescriptor.cs
- controlskin.cs
- ManagementOptions.cs
- EndpointDiscoveryMetadataCD1.cs
- Win32Exception.cs
- DecimalStorage.cs
- SqlPersistenceWorkflowInstanceDescription.cs
- DataServiceQueryException.cs
- ClientSponsor.cs
- PropertyDescriptor.cs
- CommandBindingCollection.cs
- InkCanvasAutomationPeer.cs