Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlName.cs
- ConnectionManagementElement.cs
- HttpModuleActionCollection.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- TearOffProxy.cs
- XmlHierarchyData.cs
- InputLanguageEventArgs.cs
- HealthMonitoringSectionHelper.cs
- FileUtil.cs
- TableTextElementCollectionInternal.cs
- UnsafeNativeMethods.cs
- Interlocked.cs
- Grant.cs
- TextBoxAutomationPeer.cs
- FormViewInsertEventArgs.cs
- ColorTransformHelper.cs
- DataTrigger.cs
- DataSourceXmlSerializationAttribute.cs
- TdsParserSafeHandles.cs
- ZipIOBlockManager.cs
- JavascriptXmlWriterWrapper.cs
- EventSourceCreationData.cs
- PermissionRequestEvidence.cs
- PageCatalogPart.cs
- XmlTypeMapping.cs
- ObjectCache.cs
- RadioButtonPopupAdapter.cs
- Oid.cs
- StylusPointPropertyId.cs
- WindowAutomationPeer.cs
- WebPartEventArgs.cs
- SqlMetaData.cs
- PolyLineSegmentFigureLogic.cs
- ZipIOExtraField.cs
- AttachedAnnotationChangedEventArgs.cs
- SoapElementAttribute.cs
- CommandDevice.cs
- HtmlUtf8RawTextWriter.cs
- PkcsMisc.cs
- DiagnosticsConfiguration.cs
- RotateTransform.cs
- QueryCursorEventArgs.cs
- PreDigestedSignedInfo.cs
- DataGridCellItemAutomationPeer.cs
- TraceListeners.cs
- EnumValAlphaComparer.cs
- AndCondition.cs
- StylusPointProperty.cs
- ModelItemCollectionImpl.cs
- CharUnicodeInfo.cs
- ObjectAnimationUsingKeyFrames.cs
- Trace.cs
- dbenumerator.cs
- WindowInteropHelper.cs
- BoundColumn.cs
- InputReferenceExpression.cs
- TripleDES.cs
- ElementsClipboardData.cs
- Zone.cs
- NameTable.cs
- HTMLTextWriter.cs
- IList.cs
- ActivityFunc.cs
- XmlDataSourceNodeDescriptor.cs
- TaskFileService.cs
- BinaryQueryOperator.cs
- ModelItemDictionaryImpl.cs
- ExtensibleSyndicationObject.cs
- SafeUserTokenHandle.cs
- ResourceReferenceExpression.cs
- InfoCardRSAPKCS1KeyExchangeFormatter.cs
- PrinterSettings.cs
- BitmapEffectDrawingContextState.cs
- GetPolicyDetailsRequest.cs
- TogglePatternIdentifiers.cs
- WindowsPrincipal.cs
- _FixedSizeReader.cs
- TlsSspiNegotiation.cs
- CompositeActivityMarkupSerializer.cs
- WindowsListBox.cs
- LoginView.cs
- SecurityDescriptor.cs
- TrueReadOnlyCollection.cs
- OdbcErrorCollection.cs
- Mappings.cs
- QilNode.cs
- FieldNameLookup.cs
- SoapAttributeOverrides.cs
- XPathNavigator.cs
- X509SecurityTokenParameters.cs
- ResizeGrip.cs
- FormsAuthenticationUserCollection.cs
- LayoutDump.cs
- SqlInternalConnectionSmi.cs
- RsaSecurityTokenParameters.cs
- QuotedPrintableStream.cs
- CapabilitiesAssignment.cs
- Camera.cs
- ConditionalAttribute.cs
- SerializationInfoEnumerator.cs