Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / ToggleButtonAutomationPeer.cs / 1305600 / ToggleButtonAutomationPeer.cs
using System; 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 ToggleButtonAutomationPeer : ButtonBaseAutomationPeer, IToggleProvider { /// public ToggleButtonAutomationPeer(ToggleButton owner): base(owner) {} /// override protected string GetClassNameCore() { return "Button"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Button; } /// override public object GetPattern(PatternInterface patternInterface) { if (patternInterface == PatternInterface.Toggle) { return this; } else { return base.GetPattern(patternInterface); } } void IToggleProvider.Toggle() { if(!IsEnabled()) throw new ElementNotEnabledException(); ToggleButton owner = (ToggleButton)Owner; owner.OnToggle(); } ToggleState IToggleProvider.ToggleState { get { ToggleButton owner = (ToggleButton)Owner; return ConvertToToggleState(owner.IsChecked); } } // [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)] internal virtual void RaiseToggleStatePropertyChangedEvent(bool? oldValue, bool? newValue) { if (oldValue != newValue) { RaisePropertyChangedEvent(TogglePatternIdentifiers.ToggleStateProperty, ConvertToToggleState(oldValue), ConvertToToggleState(newValue)); } } private static ToggleState ConvertToToggleState(bool? value) { switch (value) { case (true): return ToggleState.On; case (false): return ToggleState.Off; default: return ToggleState.Indeterminate; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; 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 ToggleButtonAutomationPeer : ButtonBaseAutomationPeer, IToggleProvider { /// public ToggleButtonAutomationPeer(ToggleButton owner): base(owner) {} /// override protected string GetClassNameCore() { return "Button"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Button; } /// override public object GetPattern(PatternInterface patternInterface) { if (patternInterface == PatternInterface.Toggle) { return this; } else { return base.GetPattern(patternInterface); } } void IToggleProvider.Toggle() { if(!IsEnabled()) throw new ElementNotEnabledException(); ToggleButton owner = (ToggleButton)Owner; owner.OnToggle(); } ToggleState IToggleProvider.ToggleState { get { ToggleButton owner = (ToggleButton)Owner; return ConvertToToggleState(owner.IsChecked); } } // [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)] internal virtual void RaiseToggleStatePropertyChangedEvent(bool? oldValue, bool? newValue) { if (oldValue != newValue) { RaisePropertyChangedEvent(TogglePatternIdentifiers.ToggleStateProperty, ConvertToToggleState(oldValue), ConvertToToggleState(newValue)); } } private static ToggleState ConvertToToggleState(bool? value) { switch (value) { case (true): return ToggleState.On; case (false): return ToggleState.Off; default: return ToggleState.Indeterminate; } } } } // 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
- XmlNamespaceDeclarationsAttribute.cs
- XsltContext.cs
- DocumentEventArgs.cs
- ProviderIncompatibleException.cs
- TimeSpanConverter.cs
- QueuePropertyVariants.cs
- TreeBuilder.cs
- MemberProjectionIndex.cs
- PackUriHelper.cs
- Errors.cs
- AutoGeneratedFieldProperties.cs
- ThicknessAnimationBase.cs
- Column.cs
- RawAppCommandInputReport.cs
- TrackingProfileSerializer.cs
- Error.cs
- ContentValidator.cs
- MemberDomainMap.cs
- WebPartConnectionsEventArgs.cs
- PageTrueTypeFont.cs
- XmlQuerySequence.cs
- SystemBrushes.cs
- TextMessageEncodingElement.cs
- WorkflowServiceBehavior.cs
- WebSysDescriptionAttribute.cs
- DynamicDataExtensions.cs
- WindowsIPAddress.cs
- ExternalException.cs
- ExtentJoinTreeNode.cs
- OracleInternalConnection.cs
- MouseActionConverter.cs
- TextTreeInsertUndoUnit.cs
- ContextDataSourceView.cs
- EmptyStringExpandableObjectConverter.cs
- uribuilder.cs
- ToolboxSnapDragDropEventArgs.cs
- BlockExpression.cs
- ItemsPanelTemplate.cs
- DeferredElementTreeState.cs
- DataGridViewSelectedRowCollection.cs
- ListViewTableRow.cs
- EventLogEntry.cs
- InputScopeManager.cs
- XamlReaderHelper.cs
- KeyboardNavigation.cs
- TagNameToTypeMapper.cs
- FontClient.cs
- DataServiceClientException.cs
- ObjectCloneHelper.cs
- Substitution.cs
- GetRecipientRequest.cs
- ComponentChangingEvent.cs
- Ops.cs
- SqlClientFactory.cs
- PropertyPathWorker.cs
- Hashtable.cs
- DefaultProxySection.cs
- BoundColumn.cs
- SafeMILHandleMemoryPressure.cs
- CustomAssemblyResolver.cs
- SimpleType.cs
- ErrorHandlerModule.cs
- SecurityContext.cs
- ExtensionFile.cs
- DataControlLinkButton.cs
- RuleValidation.cs
- XmlDomTextWriter.cs
- TransactionException.cs
- Effect.cs
- TemplatedMailWebEventProvider.cs
- ResourceLoader.cs
- TypeUnloadedException.cs
- XAMLParseException.cs
- BasicDesignerLoader.cs
- ListBase.cs
- GenericEnumerator.cs
- TabPage.cs
- UnsafePeerToPeerMethods.cs
- CapabilitiesAssignment.cs
- OracleBoolean.cs
- DocumentViewer.cs
- AssemblyName.cs
- WebPartEditVerb.cs
- ServiceParser.cs
- DbConnectionStringBuilder.cs
- ManagementBaseObject.cs
- ControlSerializer.cs
- SR.cs
- WindowsFormsLinkLabel.cs
- ProjectedSlot.cs
- TextBoxView.cs
- ETagAttribute.cs
- ThicknessAnimation.cs
- CapiSymmetricAlgorithm.cs
- NamespaceExpr.cs
- WorkflowMarkupSerializer.cs
- TraceRecord.cs
- UpdateEventArgs.cs
- SourceInterpreter.cs
- ProfileSettings.cs