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
- Renderer.cs
- GridViewSelectEventArgs.cs
- TargetInvocationException.cs
- CompareValidator.cs
- Overlapped.cs
- HandleExceptionArgs.cs
- Authorization.cs
- Vector3D.cs
- PriorityQueue.cs
- TextTreeUndo.cs
- LinearKeyFrames.cs
- SelfIssuedAuthRSAPKCS1SignatureDeformatter.cs
- SimpleMailWebEventProvider.cs
- LineUtil.cs
- HttpProtocolImporter.cs
- NestedContainer.cs
- WindowsStatusBar.cs
- XmlConvert.cs
- AmbiguousMatchException.cs
- SqlFactory.cs
- ListBindingConverter.cs
- RadioButtonRenderer.cs
- MaskDesignerDialog.cs
- Misc.cs
- WindowsListViewItem.cs
- ProgressChangedEventArgs.cs
- CodeGotoStatement.cs
- BufferManager.cs
- WebResponse.cs
- NetCodeGroup.cs
- TextElementEnumerator.cs
- WindowsRichEdit.cs
- DescendantQuery.cs
- XmlEntity.cs
- ElementHost.cs
- SetMemberBinder.cs
- XPathNavigator.cs
- WorkflowPersistenceContext.cs
- ServiceParser.cs
- EditorResources.cs
- MappedMetaModel.cs
- LineGeometry.cs
- remotingproxy.cs
- CodeActivityMetadata.cs
- CellConstantDomain.cs
- SimpleRecyclingCache.cs
- LogRecordSequence.cs
- ViewBox.cs
- SqlNodeAnnotations.cs
- BamlRecordHelper.cs
- handlecollector.cs
- filewebrequest.cs
- MatrixTransform.cs
- DataIdProcessor.cs
- IRCollection.cs
- Opcode.cs
- ConfigurationStrings.cs
- CellParagraph.cs
- TypefaceMetricsCache.cs
- OuterGlowBitmapEffect.cs
- FormatterConverter.cs
- DesignerTransaction.cs
- DesignerPerfEventProvider.cs
- XsltArgumentList.cs
- FixedHyperLink.cs
- FormViewUpdatedEventArgs.cs
- BinaryFormatter.cs
- CompositeScriptReference.cs
- MarkedHighlightComponent.cs
- Rights.cs
- HttpClientCertificate.cs
- TimeIntervalCollection.cs
- TargetException.cs
- EditorZone.cs
- Renderer.cs
- AlgoModule.cs
- HtmlInputHidden.cs
- ResolveCriteriaCD1.cs
- ContextMenuAutomationPeer.cs
- SafeViewOfFileHandle.cs
- XmlNamespaceMapping.cs
- QueuedDeliveryRequirementsMode.cs
- DataGridViewSelectedColumnCollection.cs
- HwndStylusInputProvider.cs
- IsolatedStorageFileStream.cs
- RuntimeHelpers.cs
- OdbcDataReader.cs
- InputMethodStateChangeEventArgs.cs
- DatePickerTextBox.cs
- RepeaterItemCollection.cs
- ServiceParser.cs
- FileVersion.cs
- Registry.cs
- PolyLineSegment.cs
- Nodes.cs
- FilteredDataSetHelper.cs
- BrowserCapabilitiesCodeGenerator.cs
- ConfigXmlCDataSection.cs
- ComplexPropertyEntry.cs
- PropertyEmitter.cs