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
- HandlerFactoryCache.cs
- HwndProxyElementProvider.cs
- ToolStripKeyboardHandlingService.cs
- TemplateBindingExtensionConverter.cs
- XmlSchemaSimpleTypeRestriction.cs
- Error.cs
- ToolStripDropDownButton.cs
- WebBrowserDesigner.cs
- WebEvents.cs
- SqlClientPermission.cs
- RawAppCommandInputReport.cs
- DesignSurfaceManager.cs
- Function.cs
- TextServicesDisplayAttributePropertyRanges.cs
- grammarelement.cs
- CaseInsensitiveHashCodeProvider.cs
- RevocationPoint.cs
- CodeIterationStatement.cs
- HttpCacheVary.cs
- SchemaComplexType.cs
- WebBrowserProgressChangedEventHandler.cs
- ComponentChangedEvent.cs
- WorkflowServiceHostFactory.cs
- RootBuilder.cs
- PropertyBuilder.cs
- FormViewPageEventArgs.cs
- DBSqlParserTableCollection.cs
- Decorator.cs
- VisualBasic.cs
- DependencySource.cs
- RegexWorker.cs
- LinearGradientBrush.cs
- ExtensionSurface.cs
- SecurityTokenRequirement.cs
- StringArrayEditor.cs
- PackUriHelper.cs
- ReadOnlyDataSource.cs
- PagePropertiesChangingEventArgs.cs
- PolyLineSegment.cs
- PolyLineSegmentFigureLogic.cs
- DomainLiteralReader.cs
- MetadataProperty.cs
- FreezableDefaultValueFactory.cs
- RadialGradientBrush.cs
- HttpCookiesSection.cs
- ManagedIStream.cs
- EventRoute.cs
- ElementAction.cs
- UdpTransportSettingsElement.cs
- DispatchChannelSink.cs
- RenderData.cs
- DbParameterCollection.cs
- ComboBox.cs
- PointHitTestResult.cs
- PackageStore.cs
- OrderByBuilder.cs
- TableRow.cs
- Part.cs
- BlurEffect.cs
- SessionPageStateSection.cs
- ThicknessAnimation.cs
- StructuralComparisons.cs
- OrderToken.cs
- SequenceDesigner.xaml.cs
- AncillaryOps.cs
- HttpFormatExtensions.cs
- FileStream.cs
- BindingCollection.cs
- AstNode.cs
- _NegoState.cs
- TableColumnCollectionInternal.cs
- ImportCatalogPart.cs
- HttpEncoder.cs
- Identifier.cs
- DbConnectionPoolGroupProviderInfo.cs
- ThemeInfoAttribute.cs
- InvalidOperationException.cs
- SafeNativeMethods.cs
- Control.cs
- CheckBoxRenderer.cs
- VirtualPathUtility.cs
- EntityDataSourceContextCreatingEventArgs.cs
- IDReferencePropertyAttribute.cs
- CapabilitiesPattern.cs
- iisPickupDirectory.cs
- iisPickupDirectory.cs
- WindowsTreeView.cs
- SamlAction.cs
- SiteIdentityPermission.cs
- QilChoice.cs
- StrokeNodeEnumerator.cs
- GroupLabel.cs
- HttpCookiesSection.cs
- PrintSystemException.cs
- DataGridViewCellParsingEventArgs.cs
- MissingFieldException.cs
- WebPartZoneBaseDesigner.cs
- DataGridViewCellCollection.cs
- DataGrid.cs
- XmlSchemaSimpleType.cs