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
- InvalidDataException.cs
- ChannelDispatcherCollection.cs
- CursorEditor.cs
- DeviceContexts.cs
- RectAnimationUsingKeyFrames.cs
- CheckableControlBaseAdapter.cs
- ObjectNavigationPropertyMapping.cs
- RotateTransform3D.cs
- InternalUserCancelledException.cs
- Dispatcher.cs
- SQLDateTime.cs
- DependencyPropertyKey.cs
- ClientTarget.cs
- WebColorConverter.cs
- QilChoice.cs
- CorePropertiesFilter.cs
- CollectionViewGroup.cs
- NavigationHelper.cs
- TypeDescriptionProvider.cs
- DataGridViewHitTestInfo.cs
- StreamGeometry.cs
- SqlTrackingWorkflowInstance.cs
- ScriptResourceInfo.cs
- TdsParserSafeHandles.cs
- ThreadStartException.cs
- CreateUserWizard.cs
- ExpressionEditorSheet.cs
- CompoundFileReference.cs
- ConfigXmlWhitespace.cs
- QueryContinueDragEventArgs.cs
- OutArgument.cs
- Exceptions.cs
- HttpDebugHandler.cs
- ObservableCollection.cs
- MsmqInputSessionChannel.cs
- PropertyValidationContext.cs
- CodeMemberField.cs
- CompositeFontParser.cs
- ImageButton.cs
- AssemblyCache.cs
- RelatedView.cs
- SoapIgnoreAttribute.cs
- PeerApplicationLaunchInfo.cs
- LingerOption.cs
- XmlCharCheckingReader.cs
- ToolStripItemDataObject.cs
- ForeignKeyConstraint.cs
- WebScriptMetadataMessageEncoderFactory.cs
- ObjectDataSourceStatusEventArgs.cs
- PingOptions.cs
- XmlLangPropertyAttribute.cs
- TextCharacters.cs
- WebServiceHandler.cs
- OperationCanceledException.cs
- ConfigurationLocationCollection.cs
- IndentedTextWriter.cs
- EntityUtil.cs
- IncomingWebResponseContext.cs
- CodeTypeParameter.cs
- EditorPartChrome.cs
- ReliableOutputConnection.cs
- ServicePointManager.cs
- DrawingGroup.cs
- XNodeValidator.cs
- Query.cs
- XmlSchemaSet.cs
- StylusPointPropertyInfo.cs
- ListBindingHelper.cs
- CopyAttributesAction.cs
- invalidudtexception.cs
- VideoDrawing.cs
- TreeNodeBindingCollection.cs
- Pen.cs
- BitConverter.cs
- VersionPair.cs
- ScaleTransform.cs
- _PooledStream.cs
- RadioButton.cs
- DesignerInterfaces.cs
- PolicyStatement.cs
- MappedMetaModel.cs
- ColorBuilder.cs
- Brushes.cs
- ResourceCodeDomSerializer.cs
- PreloadedPackages.cs
- Application.cs
- TokenizerHelper.cs
- CodeDelegateCreateExpression.cs
- PageParserFilter.cs
- ScrollableControl.cs
- RangeBaseAutomationPeer.cs
- Graphics.cs
- EncoderParameters.cs
- CompilerError.cs
- PowerStatus.cs
- TableLayoutCellPaintEventArgs.cs
- ConfigurationPermission.cs
- SafeBitVector32.cs
- StylusButtonEventArgs.cs
- PersonalizationStateInfoCollection.cs