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
- BindStream.cs
- CardSpaceException.cs
- CurrentChangingEventManager.cs
- CancellableEnumerable.cs
- PostBackTrigger.cs
- Int32Collection.cs
- CTreeGenerator.cs
- CachedTypeface.cs
- ToolStripSeparator.cs
- TableRowGroupCollection.cs
- OleDbWrapper.cs
- XpsS0ValidatingLoader.cs
- ReadOnlyNameValueCollection.cs
- SiteMapSection.cs
- ExtensionDataObject.cs
- DataGridBeginningEditEventArgs.cs
- AnnotationAuthorChangedEventArgs.cs
- HandlerWithFactory.cs
- PriorityBindingExpression.cs
- XamlPoint3DCollectionSerializer.cs
- initElementDictionary.cs
- TCPListener.cs
- MSG.cs
- TypeUtils.cs
- MultiSelector.cs
- Random.cs
- CodeParameterDeclarationExpressionCollection.cs
- LayoutTable.cs
- ProtocolsConfiguration.cs
- CodeMemberMethod.cs
- SqlProvider.cs
- _HeaderInfoTable.cs
- ConfigXmlCDataSection.cs
- FullTextLine.cs
- SelectionRange.cs
- MultipleViewPatternIdentifiers.cs
- Task.cs
- CatalogZoneAutoFormat.cs
- RequestCachingSection.cs
- HttpClientCertificate.cs
- TreeWalker.cs
- CryptoApi.cs
- JournalEntryStack.cs
- DataGridViewLayoutData.cs
- WebPartAuthorizationEventArgs.cs
- BitmapEffectGroup.cs
- GlyphShapingProperties.cs
- CompositeControl.cs
- JsonWriterDelegator.cs
- DataTemplateKey.cs
- DataGridViewCellCancelEventArgs.cs
- TreeViewImageIndexConverter.cs
- SingleConverter.cs
- ProcessManager.cs
- FixedStringLookup.cs
- FontConverter.cs
- Link.cs
- EncoderReplacementFallback.cs
- RenderData.cs
- DefaultBindingPropertyAttribute.cs
- UnsafeNativeMethods.cs
- DataGridViewCheckBoxCell.cs
- XPathSelfQuery.cs
- KeyConstraint.cs
- WpfPayload.cs
- httpserverutility.cs
- ScrollableControlDesigner.cs
- ToolboxDataAttribute.cs
- AdapterDictionary.cs
- GatewayIPAddressInformationCollection.cs
- DataGridBoolColumn.cs
- CodeDomConfigurationHandler.cs
- EntityKey.cs
- DbProviderManifest.cs
- FormattedTextSymbols.cs
- Parameter.cs
- StatusBarDrawItemEvent.cs
- StringAnimationBase.cs
- BitmapEffectrendercontext.cs
- DesignOnlyAttribute.cs
- SqlProfileProvider.cs
- InstanceContextManager.cs
- TransformPatternIdentifiers.cs
- ValidationResult.cs
- XmlSchemaObjectTable.cs
- AnonymousIdentificationModule.cs
- SharedPerformanceCounter.cs
- MatrixCamera.cs
- ClrProviderManifest.cs
- AppDomainShutdownMonitor.cs
- ObjectDataSourceStatusEventArgs.cs
- ConnectionPointCookie.cs
- SqlBuilder.cs
- ValidatorCollection.cs
- NegotiationTokenAuthenticatorStateCache.cs
- CustomValidator.cs
- HandledMouseEvent.cs
- TryCatch.cs
- AnimationClockResource.cs
- InvalidDataContractException.cs