Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / RadioButtonAutomationPeer.cs / 1407647 / RadioButtonAutomationPeer.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.Interop; using System.Windows.Media; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class RadioButtonAutomationPeer : ToggleButtonAutomationPeer, ISelectionItemProvider { /// public RadioButtonAutomationPeer(RadioButton owner): base(owner) {} /// override protected string GetClassNameCore() { return "RadioButton"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.RadioButton; } /// override public object GetPattern(PatternInterface patternInterface) { if (patternInterface == PatternInterface.SelectionItem) { return this; } else if(patternInterface == PatternInterface.SynchronizedInput) { return base.GetPattern(patternInterface); } else { return null; } } ////// Sets the current element as the selection /// This clears the selection from other elements in the container /// void ISelectionItemProvider.Select() { if (!IsEnabled()) throw new ElementNotEnabledException(); ((RadioButton)Owner).SetCurrentValueInternal(RadioButton.IsCheckedProperty, MS.Internal.KnownBoxes.BooleanBoxes.TrueBox); } ////// Adds current element to selection /// void ISelectionItemProvider.AddToSelection() { if (((RadioButton)Owner).IsChecked != true) throw new InvalidOperationException(SR.Get(SRID.UIA_OperationCannotBePerformed)); } ////// Removes current element from selection /// void ISelectionItemProvider.RemoveFromSelection() { // If RadioButton is checked - RemoveFromSelection is invalid operation if (((RadioButton)Owner).IsChecked == true) throw new InvalidOperationException(SR.Get(SRID.UIA_OperationCannotBePerformed)); } ////// Check whether an element is selected /// ///returns true if the element is selected bool ISelectionItemProvider.IsSelected { get { return ((RadioButton)Owner).IsChecked == true; } } ////// The logical element that supports the SelectionPattern for this Item /// ///returns an IRawElementProviderSimple IRawElementProviderSimple ISelectionItemProvider.SelectionContainer { get { return null; } } // [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)] internal override void RaiseToggleStatePropertyChangedEvent(bool? oldValue, bool? newValue) { RaisePropertyChangedEvent( SelectionItemPatternIdentifiers.IsSelectedProperty, oldValue == true, newValue == true); } } } // 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
- Win32Native.cs
- BitmapScalingModeValidation.cs
- SerializerProvider.cs
- ToolStripScrollButton.cs
- MembershipSection.cs
- DocumentScope.cs
- SerializationEventsCache.cs
- Container.cs
- VectorKeyFrameCollection.cs
- OnOperation.cs
- AsyncOperationManager.cs
- SerializerDescriptor.cs
- StrongTypingException.cs
- WhitespaceSignificantCollectionAttribute.cs
- XmlWriter.cs
- _TimerThread.cs
- SecurityResources.cs
- pingexception.cs
- MeasureData.cs
- HttpResponseWrapper.cs
- EdmConstants.cs
- XmlSchemaInferenceException.cs
- BufferedOutputStream.cs
- StringFunctions.cs
- FamilyCollection.cs
- SecurityKeyIdentifier.cs
- AdPostCacheSubstitution.cs
- WebPartDesigner.cs
- DbReferenceCollection.cs
- SmtpException.cs
- VirtualizingStackPanel.cs
- DbConnectionFactory.cs
- AsymmetricAlgorithm.cs
- XmlSiteMapProvider.cs
- AttributeQuery.cs
- Parser.cs
- DataGridViewCellStateChangedEventArgs.cs
- CopyOnWriteList.cs
- SignerInfo.cs
- HtmlShim.cs
- ToolStripSystemRenderer.cs
- TextTreeRootTextBlock.cs
- OpCopier.cs
- CollectionEditorDialog.cs
- TextElementEnumerator.cs
- MessageEventSubscriptionService.cs
- TimeBoundedCache.cs
- PolicyImporterElementCollection.cs
- FontNamesConverter.cs
- CodeObject.cs
- RelationshipWrapper.cs
- ContentValidator.cs
- StylusOverProperty.cs
- Page.cs
- AsymmetricKeyExchangeFormatter.cs
- SafeNativeMethods.cs
- Main.cs
- AppDomain.cs
- CompensationHandlingFilter.cs
- DecoderReplacementFallback.cs
- SQLDecimalStorage.cs
- WebPartActionVerb.cs
- TextMarkerSource.cs
- RemoteArgument.cs
- EntityDataReader.cs
- Html32TextWriter.cs
- PasswordPropertyTextAttribute.cs
- MetadataException.cs
- SoapAttributeOverrides.cs
- DispatcherFrame.cs
- IPPacketInformation.cs
- WrappedOptions.cs
- DynamicPropertyReader.cs
- NominalTypeEliminator.cs
- DataControlFieldsEditor.cs
- TableDesigner.cs
- XmlSiteMapProvider.cs
- SqlDataSourceSelectingEventArgs.cs
- EditorAttribute.cs
- SHA1CryptoServiceProvider.cs
- TextEditorThreadLocalStore.cs
- RequestQueue.cs
- ClaimSet.cs
- PlainXmlDeserializer.cs
- AssemblyNameUtility.cs
- RSAOAEPKeyExchangeDeformatter.cs
- Int64Converter.cs
- Point.cs
- SyndicationDeserializer.cs
- FaultReasonText.cs
- XmlSchemaAnyAttribute.cs
- TypeDelegator.cs
- ScriptResourceDefinition.cs
- Helper.cs
- SplineQuaternionKeyFrame.cs
- AuthenticationSection.cs
- ExplicitDiscriminatorMap.cs
- PermissionListSet.cs
- AffineTransform3D.cs
- ObjectDataProvider.cs