Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- NotFiniteNumberException.cs
- IdnElement.cs
- InvalidEnumArgumentException.cs
- ResourcePropertyMemberCodeDomSerializer.cs
- PrincipalPermission.cs
- IUnknownConstantAttribute.cs
- BrowserInteropHelper.cs
- CodePrimitiveExpression.cs
- WriteTimeStream.cs
- SchemaNotation.cs
- MarkupCompilePass1.cs
- XamlValidatingReader.cs
- NullRuntimeConfig.cs
- MatrixAnimationBase.cs
- WorkflowPageSetupDialog.cs
- OutputCacheSection.cs
- TextElementCollectionHelper.cs
- dbdatarecord.cs
- DataTablePropertyDescriptor.cs
- XPathNavigatorReader.cs
- XPathDocumentBuilder.cs
- PartialCachingControl.cs
- ConstNode.cs
- Cloud.cs
- KnownColorTable.cs
- HttpChannelFactory.cs
- WindowsListViewScroll.cs
- Size3DConverter.cs
- BufferedOutputStream.cs
- BindingMAnagerBase.cs
- RootBuilder.cs
- TableAutomationPeer.cs
- CompilerWrapper.cs
- Msec.cs
- TreeViewAutomationPeer.cs
- Rijndael.cs
- TaskExceptionHolder.cs
- GifBitmapDecoder.cs
- DataContractSerializerOperationGenerator.cs
- DbInsertCommandTree.cs
- ConnectionManagementSection.cs
- BasicCellRelation.cs
- ReflectionTypeLoadException.cs
- BamlResourceDeserializer.cs
- FixedSOMImage.cs
- serverconfig.cs
- VisualCollection.cs
- HashCryptoHandle.cs
- HashMembershipCondition.cs
- DesignerDataSchemaClass.cs
- BrowserCapabilitiesCompiler.cs
- XLinq.cs
- ModelItemDictionary.cs
- ProcessModelSection.cs
- MissingManifestResourceException.cs
- ComponentEditorPage.cs
- Util.cs
- MarkupExtensionReturnTypeAttribute.cs
- ZipIOLocalFileDataDescriptor.cs
- TileModeValidation.cs
- TextDecorationUnitValidation.cs
- XamlSerializer.cs
- MissingMemberException.cs
- UpdatableGenericsFeature.cs
- SerializationStore.cs
- WebExceptionStatus.cs
- WebPartEventArgs.cs
- DataBinding.cs
- InputLanguageProfileNotifySink.cs
- ContainerUIElement3D.cs
- IndexedWhereQueryOperator.cs
- M3DUtil.cs
- AssemblyHash.cs
- RuntimeHelpers.cs
- Not.cs
- SizeIndependentAnimationStorage.cs
- CompositeScriptReference.cs
- SqlDesignerDataSourceView.cs
- Profiler.cs
- IISUnsafeMethods.cs
- FontStretchConverter.cs
- StyleHelper.cs
- AnnotationHelper.cs
- TypeExtensionSerializer.cs
- RemotingSurrogateSelector.cs
- PhysicalOps.cs
- WebControl.cs
- _HeaderInfo.cs
- DocumentGrid.cs
- Matrix.cs
- EncoderReplacementFallback.cs
- ImageList.cs
- AsyncResult.cs
- CheckedPointers.cs
- SerializerProvider.cs
- InkCanvasSelectionAdorner.cs
- Pkcs7Signer.cs
- SingleAnimationUsingKeyFrames.cs
- X509ChainPolicy.cs
- DllNotFoundException.cs