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
- CallContext.cs
- BufferedGraphics.cs
- XamlStyleSerializer.cs
- RemotingConfiguration.cs
- WorkflowRuntimeServicesBehavior.cs
- Effect.cs
- LinkDescriptor.cs
- ResourceReferenceExpression.cs
- PopupRootAutomationPeer.cs
- AsymmetricCryptoHandle.cs
- Int32AnimationUsingKeyFrames.cs
- ContainerFilterService.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- FormsAuthenticationConfiguration.cs
- Solver.cs
- OpenTypeLayoutCache.cs
- InstanceHandleReference.cs
- DecoderExceptionFallback.cs
- UnauthorizedWebPart.cs
- TextPenaltyModule.cs
- BitmapEffectGeneralTransform.cs
- ListControl.cs
- ShaderEffect.cs
- PeerObject.cs
- HttpRequestBase.cs
- DataSourceViewSchemaConverter.cs
- InternalCache.cs
- PolyQuadraticBezierSegment.cs
- MembershipUser.cs
- FloaterParagraph.cs
- LinqDataSourceEditData.cs
- PeerInvitationResponse.cs
- EntityProviderFactory.cs
- ContextProperty.cs
- XsdDateTime.cs
- ViewSimplifier.cs
- FixedSOMTableCell.cs
- EncodingTable.cs
- UrlPath.cs
- ToolboxItemWrapper.cs
- CheckBoxRenderer.cs
- ClassImporter.cs
- Script.cs
- PointCollection.cs
- DropShadowBitmapEffect.cs
- AxisAngleRotation3D.cs
- FilteredReadOnlyMetadataCollection.cs
- DataPagerCommandEventArgs.cs
- TextBoxAutoCompleteSourceConverter.cs
- WebServiceMethodData.cs
- HttpValueCollection.cs
- ContextProperty.cs
- XmlSiteMapProvider.cs
- AutoCompleteStringCollection.cs
- ScriptIgnoreAttribute.cs
- SafeNativeMethods.cs
- CryptoProvider.cs
- FtpCachePolicyElement.cs
- DefaultProxySection.cs
- ToolStripMenuItemCodeDomSerializer.cs
- ResXBuildProvider.cs
- CommandValueSerializer.cs
- RegistryPermission.cs
- ToolboxItemAttribute.cs
- SecurityElement.cs
- PrivacyNoticeBindingElementImporter.cs
- DataObjectAttribute.cs
- SqlCacheDependency.cs
- TokenCreationException.cs
- LockCookie.cs
- ProxySimple.cs
- ArcSegment.cs
- TextChange.cs
- NamedPermissionSet.cs
- AlphabetConverter.cs
- DllNotFoundException.cs
- MetadataPropertyAttribute.cs
- CellLabel.cs
- ActivitiesCollection.cs
- Vector3DConverter.cs
- RewritingPass.cs
- ComponentResourceKey.cs
- ProxySimple.cs
- DocumentGrid.cs
- TextDecoration.cs
- AxHost.cs
- Rectangle.cs
- SendingRequestEventArgs.cs
- LogicalTreeHelper.cs
- UnknownBitmapDecoder.cs
- ContextQuery.cs
- ArraySubsetEnumerator.cs
- DLinqAssociationProvider.cs
- ProfileProvider.cs
- ExtensionQuery.cs
- JsonReaderDelegator.cs
- PagedDataSource.cs
- LayoutEditorPart.cs
- QueryOperator.cs
- UpdatePanelTrigger.cs