Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Automation / Peers / TabItemAutomationPeer.cs / 1 / TabItemAutomationPeer.cs
using System; using System.Collections.Generic; 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.Controls.Primitives; using System.Windows.Interop; using System.Windows.Media; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class TabItemAutomationPeer : SelectorItemAutomationPeer, ISelectionItemProvider { /// public TabItemAutomationPeer(object owner, TabControlAutomationPeer tabControlAutomationPeer) : base(owner, tabControlAutomationPeer) {} /// override protected string GetClassNameCore() { return "TabItem"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.TabItem; } // Return the base without the AccessKey character /// override protected string GetNameCore() { string result = base.GetNameCore(); if (!string.IsNullOrEmpty(result)) { TabItem tabItem = GetWrapper() as TabItem; if (tabItem.Header is string) { return AccessText.RemoveAccessKeyMarker(result); } } return result; } // Selected TabItem content is located under the TabControl style visual tree /// protected override ListGetChildrenCore() { // Call the base in case we have children in the header List headerChildren = base.GetChildrenCore(); // Only if the TabItem is selected we need to add its visual children TabItem tabItem = GetWrapper() as TabItem; if (tabItem != null && tabItem.IsSelected) { TabControl parentTabControl = ItemsControlAutomationPeer.Owner as TabControl; if (parentTabControl != null) { ContentPresenter contentHost = parentTabControl.SelectedContentPresenter; if (contentHost != null) { AutomationPeer contentHostPeer = new FrameworkElementAutomationPeer(contentHost); List contentChildren = contentHostPeer.GetChildren(); if (contentChildren != null) { if (headerChildren == null) headerChildren = contentChildren; else headerChildren.AddRange(contentChildren); } } } } return headerChildren; } void ISelectionItemProvider.RemoveFromSelection() { if (!IsEnabled()) throw new ElementNotEnabledException(); TabItem tabItem = GetWrapper() as TabItem; if (tabItem.IsSelected) { throw new InvalidOperationException(SR.Get(SRID.UIA_OperationCannotBePerformed)); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.Generic; 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.Controls.Primitives; using System.Windows.Interop; using System.Windows.Media; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class TabItemAutomationPeer : SelectorItemAutomationPeer, ISelectionItemProvider { /// public TabItemAutomationPeer(object owner, TabControlAutomationPeer tabControlAutomationPeer) : base(owner, tabControlAutomationPeer) {} /// override protected string GetClassNameCore() { return "TabItem"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.TabItem; } // Return the base without the AccessKey character /// override protected string GetNameCore() { string result = base.GetNameCore(); if (!string.IsNullOrEmpty(result)) { TabItem tabItem = GetWrapper() as TabItem; if (tabItem.Header is string) { return AccessText.RemoveAccessKeyMarker(result); } } return result; } // Selected TabItem content is located under the TabControl style visual tree /// protected override List GetChildrenCore() { // Call the base in case we have children in the header List headerChildren = base.GetChildrenCore(); // Only if the TabItem is selected we need to add its visual children TabItem tabItem = GetWrapper() as TabItem; if (tabItem != null && tabItem.IsSelected) { TabControl parentTabControl = ItemsControlAutomationPeer.Owner as TabControl; if (parentTabControl != null) { ContentPresenter contentHost = parentTabControl.SelectedContentPresenter; if (contentHost != null) { AutomationPeer contentHostPeer = new FrameworkElementAutomationPeer(contentHost); List contentChildren = contentHostPeer.GetChildren(); if (contentChildren != null) { if (headerChildren == null) headerChildren = contentChildren; else headerChildren.AddRange(contentChildren); } } } } return headerChildren; } void ISelectionItemProvider.RemoveFromSelection() { if (!IsEnabled()) throw new ElementNotEnabledException(); TabItem tabItem = GetWrapper() as TabItem; if (tabItem.IsSelected) { throw new InvalidOperationException(SR.Get(SRID.UIA_OperationCannotBePerformed)); } } } } // 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
- XmlAttributeHolder.cs
- NetworkStream.cs
- DoubleAnimationClockResource.cs
- Parallel.cs
- SwitchLevelAttribute.cs
- OwnerDrawPropertyBag.cs
- EventInfo.cs
- BuildProviderAppliesToAttribute.cs
- DoubleLinkList.cs
- XmlDataImplementation.cs
- HttpApplication.cs
- SamlAudienceRestrictionCondition.cs
- EntityTypeEmitter.cs
- ValueTypeIndexerReference.cs
- Ray3DHitTestResult.cs
- FullTextBreakpoint.cs
- RayHitTestParameters.cs
- DefaultTraceListener.cs
- EntityExpressionVisitor.cs
- HttpWebRequest.cs
- ArraySortHelper.cs
- SafeNativeMethods.cs
- GridView.cs
- DataGridViewComboBoxColumn.cs
- DefinitionUpdate.cs
- ImageMapEventArgs.cs
- CssClassPropertyAttribute.cs
- shaperfactoryquerycacheentry.cs
- ErrorProvider.cs
- ScriptRegistrationManager.cs
- StackOverflowException.cs
- Effect.cs
- BufferedWebEventProvider.cs
- CipherData.cs
- _NegotiateClient.cs
- NamespaceInfo.cs
- Property.cs
- PropertySegmentSerializer.cs
- GetKeyedHashRequest.cs
- sqlmetadatafactory.cs
- WsiProfilesElementCollection.cs
- TypeDependencyAttribute.cs
- ClientTarget.cs
- FileSystemEventArgs.cs
- BinaryNode.cs
- PropertyItem.cs
- GeometryCombineModeValidation.cs
- Visual3D.cs
- DetailsViewPageEventArgs.cs
- PowerModeChangedEventArgs.cs
- ClientScriptManagerWrapper.cs
- BackoffTimeoutHelper.cs
- DefaultAsyncDataDispatcher.cs
- RemotingException.cs
- Rights.cs
- TypeSystemProvider.cs
- Cursors.cs
- RuleSetReference.cs
- DotExpr.cs
- HttpCookieCollection.cs
- SqlDataSourceStatusEventArgs.cs
- ContentTextAutomationPeer.cs
- SplashScreenNativeMethods.cs
- SerialStream.cs
- CodeTypeDeclaration.cs
- FunctionImportMapping.cs
- SQLInt64Storage.cs
- IRCollection.cs
- TypedDatasetGenerator.cs
- MenuItemStyle.cs
- ZoomPercentageConverter.cs
- HttpCapabilitiesEvaluator.cs
- Color.cs
- ReservationNotFoundException.cs
- SqlDataSourceCommandParser.cs
- InstanceData.cs
- ImageCollectionEditor.cs
- ToolboxItem.cs
- InstanceView.cs
- Sql8ExpressionRewriter.cs
- mediaeventshelper.cs
- TabControlAutomationPeer.cs
- StrokeCollectionConverter.cs
- ScaleTransform3D.cs
- NavigationHelper.cs
- BitmapFrameEncode.cs
- QuinticEase.cs
- UserPreferenceChangingEventArgs.cs
- PointAnimationUsingPath.cs
- DataGridPagingPage.cs
- PointHitTestResult.cs
- XmlObjectSerializerReadContextComplex.cs
- ProgressBar.cs
- BigIntegerStorage.cs
- PingOptions.cs
- SrgsElementFactoryCompiler.cs
- XmlBinaryWriter.cs
- TextViewBase.cs
- DataGridBoolColumn.cs
- DetailsViewUpdatedEventArgs.cs