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
- DragDropManager.cs
- storepermission.cs
- EntityDataSourceState.cs
- Merger.cs
- WebPartConnectionsConnectVerb.cs
- ComponentEditorPage.cs
- DiagnosticsConfigurationHandler.cs
- ImageField.cs
- _OverlappedAsyncResult.cs
- HttpRawResponse.cs
- XmlSchemaGroupRef.cs
- SynchronizationContext.cs
- XmlProcessingInstruction.cs
- XmlSchemaCollection.cs
- StringToken.cs
- TreeNodeCollection.cs
- ObjectStateEntry.cs
- XmlTextWriter.cs
- _OSSOCK.cs
- TreeViewItemAutomationPeer.cs
- GenerateScriptTypeAttribute.cs
- BuildTopDownAttribute.cs
- CompoundFileDeflateTransform.cs
- SqlInternalConnectionTds.cs
- ThreadExceptionEvent.cs
- SoapAttributes.cs
- HtmlElement.cs
- Array.cs
- StorageFunctionMapping.cs
- CodeNamespaceCollection.cs
- Size3DConverter.cs
- TemplateControlCodeDomTreeGenerator.cs
- InstanceKeyView.cs
- thaishape.cs
- Message.cs
- PersonalizationState.cs
- DataGridViewTextBoxCell.cs
- ConnectionOrientedTransportBindingElement.cs
- PageParser.cs
- DynamicObjectAccessor.cs
- UriTemplate.cs
- ConfigurationPropertyCollection.cs
- DataSourceNameHandler.cs
- MarshalByRefObject.cs
- GeometryConverter.cs
- AspNetSynchronizationContext.cs
- InheritanceAttribute.cs
- HelpProvider.cs
- BoolExpressionVisitors.cs
- OutputCacheSettings.cs
- _SecureChannel.cs
- SiteMapNode.cs
- GridViewColumnCollection.cs
- ServiceDocumentFormatter.cs
- WbmpConverter.cs
- EmbeddedMailObject.cs
- GeometryGroup.cs
- SqlRetyper.cs
- EntitySetBase.cs
- CustomError.cs
- PanelDesigner.cs
- FixedSOMGroup.cs
- AlphaSortedEnumConverter.cs
- SafeArchiveContext.cs
- GridViewHeaderRowPresenter.cs
- TypefaceMap.cs
- StorageAssociationSetMapping.cs
- VerificationAttribute.cs
- CommandValueSerializer.cs
- GroupStyle.cs
- OutputCacheSettings.cs
- ConnectionsZone.cs
- DataSourceUtil.cs
- SimpleHandlerBuildProvider.cs
- SubpageParagraph.cs
- TimeoutException.cs
- Regex.cs
- XmlEncoding.cs
- AppDomainAttributes.cs
- PersonalizationEntry.cs
- WebContentFormatHelper.cs
- DataTableNewRowEvent.cs
- DesignerDataSchemaClass.cs
- DoubleLinkList.cs
- PageEventArgs.cs
- FocusChangedEventArgs.cs
- CodeMethodMap.cs
- TypePresenter.xaml.cs
- WebPartZoneBaseDesigner.cs
- ChildrenQuery.cs
- DataGridViewToolTip.cs
- EmptyControlCollection.cs
- shaperfactoryquerycachekey.cs
- StrongNameKeyPair.cs
- __Filters.cs
- DbModificationCommandTree.cs
- SafeNativeMethodsMilCoreApi.cs
- PropertyCondition.cs
- TemplateField.cs
- DictionaryKeyPropertyAttribute.cs