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
- FilterElement.cs
- Canvas.cs
- SliderAutomationPeer.cs
- ValueQuery.cs
- Track.cs
- Propagator.Evaluator.cs
- SelectionHighlightInfo.cs
- ResourceSet.cs
- OracleTransaction.cs
- EventProviderClassic.cs
- XPathChildIterator.cs
- DrawingVisual.cs
- ConfigurationSchemaErrors.cs
- SqlExpressionNullability.cs
- MembershipSection.cs
- PropertyEmitter.cs
- AuthorizationRule.cs
- SerializationInfoEnumerator.cs
- ReadContentAsBinaryHelper.cs
- ForeignKeyConstraint.cs
- OracleCommandBuilder.cs
- ZipIOLocalFileDataDescriptor.cs
- UnconditionalPolicy.cs
- SelectedDatesCollection.cs
- SafeFileHandle.cs
- TrustLevel.cs
- WindowsListViewItem.cs
- EdmType.cs
- FormatSettings.cs
- WriteableBitmap.cs
- TimeSpanOrInfiniteValidator.cs
- DataServiceResponse.cs
- DesignerTextWriter.cs
- BlurBitmapEffect.cs
- ConnectionManagementElement.cs
- AssertHelper.cs
- PropertyEmitterBase.cs
- MatrixKeyFrameCollection.cs
- IndexedString.cs
- MeasureData.cs
- CqlIdentifiers.cs
- rsa.cs
- XmlNamespaceDeclarationsAttribute.cs
- UIAgentCrashedException.cs
- HashSet.cs
- FontFamily.cs
- CodeDOMUtility.cs
- FixedSOMTableCell.cs
- SyntaxCheck.cs
- RowParagraph.cs
- Utils.cs
- CharStorage.cs
- TextCompositionEventArgs.cs
- StaticSiteMapProvider.cs
- StringKeyFrameCollection.cs
- CustomAttribute.cs
- StructuralCache.cs
- TemplatedWizardStep.cs
- GeometryCollection.cs
- KeyboardNavigation.cs
- IPEndPoint.cs
- DeflateStream.cs
- SessionIDManager.cs
- Token.cs
- TransportReplyChannelAcceptor.cs
- DesignOnlyAttribute.cs
- CssClassPropertyAttribute.cs
- SqlGatherConsumedAliases.cs
- MimeMapping.cs
- ContentType.cs
- DataGridViewSelectedCellCollection.cs
- GridErrorDlg.cs
- XPathNodeIterator.cs
- Interfaces.cs
- FixedSOMSemanticBox.cs
- NativeRecognizer.cs
- webbrowsersite.cs
- GridViewRow.cs
- HttpWebRequest.cs
- GridEntry.cs
- PtsContext.cs
- Attributes.cs
- WebPartCollection.cs
- LogLogRecord.cs
- RepeatInfo.cs
- Int64Storage.cs
- MasterPageCodeDomTreeGenerator.cs
- SmtpReplyReader.cs
- PeerContact.cs
- LocalizationComments.cs
- ThreadStateException.cs
- PeerCollaborationPermission.cs
- ConstantSlot.cs
- SingleObjectCollection.cs
- SchemaNames.cs
- X509ChainElement.cs
- SessionEndingCancelEventArgs.cs
- DataBinding.cs
- HtmlTableRow.cs
- RMPublishingDialog.cs