Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / System / Windows / Automation / Peers / ExpanderAutomationPeer.cs / 1 / 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. 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
- RoleBoolean.cs
- SpellerInterop.cs
- Int64AnimationBase.cs
- BufferedGraphics.cs
- ChannelSinkStacks.cs
- MainMenu.cs
- ParagraphVisual.cs
- BamlBinaryReader.cs
- SafeNativeMethods.cs
- CodeArgumentReferenceExpression.cs
- WebAdminConfigurationHelper.cs
- PropertyItem.cs
- DateTimeFormatInfoScanner.cs
- RoutingEndpointTrait.cs
- DiffuseMaterial.cs
- ControlBuilder.cs
- OdbcTransaction.cs
- ToolBarOverflowPanel.cs
- PathFigure.cs
- CreateUserWizardStep.cs
- SctClaimSerializer.cs
- Columns.cs
- HttpFileCollection.cs
- ParameterEditorUserControl.cs
- TypedTableBaseExtensions.cs
- WebPartConnectionsCancelEventArgs.cs
- XmlHierarchicalDataSourceView.cs
- TextBoxAutoCompleteSourceConverter.cs
- InheritanceRules.cs
- PreservationFileWriter.cs
- processwaithandle.cs
- Configuration.cs
- Command.cs
- CheckBox.cs
- CleanUpVirtualizedItemEventArgs.cs
- MDIClient.cs
- DummyDataSource.cs
- SmiConnection.cs
- PersonalizationState.cs
- XamlContextStack.cs
- BrowserDefinitionCollection.cs
- DirectoryInfo.cs
- SecurityMessageProperty.cs
- RestHandlerFactory.cs
- LinkClickEvent.cs
- FontUnitConverter.cs
- ElapsedEventArgs.cs
- Site.cs
- EntityDesignerDataSourceView.cs
- DataStreams.cs
- ExchangeUtilities.cs
- MessagingDescriptionAttribute.cs
- AddInControllerImpl.cs
- SendMessageRecord.cs
- SafeLocalAllocation.cs
- WebPartConnectionsConnectVerb.cs
- EndOfStreamException.cs
- FieldToken.cs
- Label.cs
- PanelDesigner.cs
- COM2TypeInfoProcessor.cs
- StringReader.cs
- ProfileSettingsCollection.cs
- BaseValidatorDesigner.cs
- ForeignKeyConstraint.cs
- NamedPipeAppDomainProtocolHandler.cs
- WebConvert.cs
- AppDomainInstanceProvider.cs
- RegexFCD.cs
- BindValidator.cs
- PathSegment.cs
- XmlChildNodes.cs
- HtmlTitle.cs
- InternalBufferOverflowException.cs
- DeobfuscatingStream.cs
- XmlKeywords.cs
- SqlRowUpdatedEvent.cs
- ImageDrawing.cs
- RegularExpressionValidator.cs
- GeneralTransform3D.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ListView.cs
- XPathAncestorQuery.cs
- ControlCollection.cs
- Transform3DCollection.cs
- WebHttpBindingElement.cs
- TargetConverter.cs
- ToolboxControl.cs
- TargetControlTypeAttribute.cs
- TypeForwardedToAttribute.cs
- BindingGroup.cs
- TypeToStringValueConverter.cs
- SharedDp.cs
- DebuggerAttributes.cs
- DesignerEventService.cs
- PropertyItemInternal.cs
- DispatcherEventArgs.cs
- RegistryPermission.cs
- ListViewItem.cs
- MemoryMappedViewAccessor.cs