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
- SiteMapNodeItem.cs
- Set.cs
- HMACRIPEMD160.cs
- ToggleButton.cs
- UrlPath.cs
- XhtmlBasicValidatorAdapter.cs
- OracleCommandSet.cs
- PeerUnsafeNativeCryptMethods.cs
- SqlUtils.cs
- MasterPageCodeDomTreeGenerator.cs
- SettingsPropertyValueCollection.cs
- ParamArrayAttribute.cs
- GenericTextProperties.cs
- DbConnectionHelper.cs
- OleDbConnectionFactory.cs
- TagNameToTypeMapper.cs
- EpmContentSerializer.cs
- SerializableAttribute.cs
- GridItemCollection.cs
- BindingFormattingDialog.cs
- ThreadPool.cs
- LazyLoadBehavior.cs
- figurelengthconverter.cs
- DesignerFrame.cs
- AsmxEndpointPickerExtension.cs
- ParameterElementCollection.cs
- CornerRadiusConverter.cs
- ProfileProvider.cs
- ArraySegment.cs
- DataSourceCache.cs
- AnimationLayer.cs
- BamlRecords.cs
- XPathNavigatorKeyComparer.cs
- XmlDataFileEditor.cs
- CatalogZoneBase.cs
- SettingsPropertyValue.cs
- BaseTreeIterator.cs
- DelegateSerializationHolder.cs
- ECDiffieHellmanCng.cs
- SqlBulkCopy.cs
- NotifyCollectionChangedEventArgs.cs
- CheckBoxList.cs
- PackageStore.cs
- RegistrySecurity.cs
- ToolStripMenuItemDesigner.cs
- ReservationNotFoundException.cs
- DateTimeOffsetConverter.cs
- ConfigXmlComment.cs
- ResourceDisplayNameAttribute.cs
- FlowDocumentPageViewerAutomationPeer.cs
- RelationshipSet.cs
- InstanceData.cs
- EventsTab.cs
- XmlUtil.cs
- FlowDocument.cs
- StrokeNodeEnumerator.cs
- CreateInstanceBinder.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- StructuralObject.cs
- CompiledIdentityConstraint.cs
- DtrList.cs
- StreamWriter.cs
- MultilineStringEditor.cs
- WebConfigurationHost.cs
- FirstQueryOperator.cs
- CheckBoxFlatAdapter.cs
- PenLineJoinValidation.cs
- Int64.cs
- BookmarkWorkItem.cs
- DispatcherExceptionEventArgs.cs
- SpecularMaterial.cs
- CorrelationService.cs
- DataGridViewToolTip.cs
- SaveFileDialog.cs
- FileChangeNotifier.cs
- JumpTask.cs
- EncoderNLS.cs
- GuidConverter.cs
- DisposableCollectionWrapper.cs
- DataMemberFieldConverter.cs
- ForeignConstraint.cs
- PatternMatcher.cs
- EpmSourcePathSegment.cs
- TargetParameterCountException.cs
- cookie.cs
- Missing.cs
- AttributeProviderAttribute.cs
- XmlNodeReader.cs
- SymLanguageVendor.cs
- ExtensionDataObject.cs
- LogRecordSequence.cs
- ServerValidateEventArgs.cs
- Range.cs
- DrawingContextWalker.cs
- DirtyTextRange.cs
- GridEntryCollection.cs
- PerformanceCounterManager.cs
- PartitionerQueryOperator.cs
- XPathArrayIterator.cs
- TabItemWrapperAutomationPeer.cs