Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / ExpanderAutomationPeer.cs / 1305600 / ExpanderAutomationPeer.cs
using System; using System.Collections; 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 ExpanderAutomationPeer : FrameworkElementAutomationPeer, IExpandCollapseProvider { /// public ExpanderAutomationPeer(Expander owner): base(owner) {} /// override protected string GetClassNameCore() { return "Expander"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Group; } /// override public object GetPattern(PatternInterface pattern) { object iface = null; if(pattern == PatternInterface.ExpandCollapse) { iface = this; } else { iface = base.GetPattern(pattern); } return iface; } #region ExpandCollapse ////// Blocking method that returns after the element has been expanded. /// ///true if the node was successfully expanded void IExpandCollapseProvider.Expand() { if (!IsEnabled()) throw new ElementNotEnabledException(); Expander owner = (Expander)((ExpanderAutomationPeer)this).Owner; owner.IsExpanded = true; } ////// Blocking method that returns after the element has been collapsed. /// ///true if the node was successfully collapsed void IExpandCollapseProvider.Collapse() { if (!IsEnabled()) throw new ElementNotEnabledException(); Expander owner = (Expander)((ExpanderAutomationPeer)this).Owner; owner.IsExpanded = false; } ///indicates an element's current Collapsed or Expanded state ExpandCollapseState IExpandCollapseProvider.ExpandCollapseState { get { Expander owner = (Expander)((ExpanderAutomationPeer)this).Owner; return owner.IsExpanded ? ExpandCollapseState.Expanded : ExpandCollapseState.Collapsed; } } // [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)] internal void RaiseExpandCollapseAutomationEvent(bool oldValue, bool newValue) { RaisePropertyChangedEvent( ExpandCollapsePatternIdentifiers.ExpandCollapseStateProperty, oldValue ? ExpandCollapseState.Expanded : ExpandCollapseState.Collapsed, newValue ? ExpandCollapseState.Expanded : ExpandCollapseState.Collapsed); } #endregion ExpandCollapse } } // 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
- StreamGeometry.cs
- ErrorFormatter.cs
- FileInfo.cs
- HeaderCollection.cs
- CompositeDuplexBindingElementImporter.cs
- Aggregates.cs
- EntityTransaction.cs
- WriteFileContext.cs
- StyleConverter.cs
- LinkUtilities.cs
- UserPreferenceChangingEventArgs.cs
- AsymmetricCryptoHandle.cs
- UnsafeNativeMethods.cs
- MinimizableAttributeTypeConverter.cs
- ScriptControlManager.cs
- ConfigurationCollectionAttribute.cs
- CommonDialog.cs
- DataRelationPropertyDescriptor.cs
- XmlWhitespace.cs
- XmlTextReader.cs
- StackOverflowException.cs
- VisualTarget.cs
- NumericUpDownAcceleration.cs
- Label.cs
- AsyncPostBackErrorEventArgs.cs
- DbMetaDataColumnNames.cs
- CharacterMetricsDictionary.cs
- DeclarativeCatalogPart.cs
- RegexCode.cs
- SchemaTypeEmitter.cs
- Type.cs
- SecurityProtocolFactory.cs
- DataServiceQueryOfT.cs
- LockedBorderGlyph.cs
- ArgIterator.cs
- EUCJPEncoding.cs
- KeyManager.cs
- LayoutManager.cs
- UrlMappingsModule.cs
- HyperLinkColumn.cs
- CFStream.cs
- RegexCompilationInfo.cs
- SizeAnimation.cs
- ListDictionary.cs
- SafeArrayTypeMismatchException.cs
- SR.cs
- KeyPressEvent.cs
- UnsafeNativeMethods.cs
- StatusBar.cs
- HttpProfileGroupBase.cs
- SystemInformation.cs
- ModelUIElement3D.cs
- SimpleHandlerFactory.cs
- XmlHierarchicalDataSourceView.cs
- PreloadedPackages.cs
- UnsafeNativeMethods.cs
- SqlMethodCallConverter.cs
- CodeConstructor.cs
- MediaEntryAttribute.cs
- CaseInsensitiveHashCodeProvider.cs
- EdmRelationshipRoleAttribute.cs
- MappingItemCollection.cs
- OptimalTextSource.cs
- ReadOnlyAttribute.cs
- AssociationEndMember.cs
- ComboBox.cs
- QuaternionAnimationUsingKeyFrames.cs
- XPathExpr.cs
- NamespaceCollection.cs
- HttpStreams.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- TagPrefixInfo.cs
- FrameSecurityDescriptor.cs
- ScriptMethodAttribute.cs
- DataGridViewLinkCell.cs
- BamlLocalizableResourceKey.cs
- CodePropertyReferenceExpression.cs
- FontStretches.cs
- CounterSampleCalculator.cs
- Crc32Helper.cs
- WorkflowDefinitionDispenser.cs
- SiteMapPathDesigner.cs
- Sentence.cs
- UnknownWrapper.cs
- UmAlQuraCalendar.cs
- SqlTypeSystemProvider.cs
- TransactionScope.cs
- MouseButtonEventArgs.cs
- PeerEndPoint.cs
- SizeAnimationBase.cs
- filewebresponse.cs
- SafeUserTokenHandle.cs
- CodeArrayCreateExpression.cs
- XmlConvert.cs
- InvalidComObjectException.cs
- OdbcConnectionPoolProviderInfo.cs
- QueueException.cs
- CustomGrammar.cs
- SettingsProperty.cs
- ProbeMatchesCD1.cs