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
- CodeTypeOfExpression.cs
- StandardOleMarshalObject.cs
- COM2Enum.cs
- BatchStream.cs
- MenuItemStyleCollection.cs
- CustomAttributeSerializer.cs
- Vector3DKeyFrameCollection.cs
- ClonableStack.cs
- RealProxy.cs
- WebPartConnectionsCloseVerb.cs
- ColorIndependentAnimationStorage.cs
- Base64Stream.cs
- recordstatefactory.cs
- EventLog.cs
- TranslateTransform.cs
- TextFormatterImp.cs
- RelatedEnd.cs
- MsmqInputChannelBase.cs
- ComboBox.cs
- ByteConverter.cs
- BuiltInExpr.cs
- XmlSchemaExporter.cs
- __Filters.cs
- ImplicitInputBrush.cs
- DataGridViewAccessibleObject.cs
- QueryOperationResponseOfT.cs
- RotateTransform3D.cs
- MatrixStack.cs
- ListItemConverter.cs
- AttributeCollection.cs
- EntityKey.cs
- ClientScriptManager.cs
- Dictionary.cs
- CodeCommentStatementCollection.cs
- XmlArrayAttribute.cs
- TableLayoutPanelCellPosition.cs
- embossbitmapeffect.cs
- IResourceProvider.cs
- BitVector32.cs
- DataMisalignedException.cs
- SetterBase.cs
- DependencyProperty.cs
- TimersDescriptionAttribute.cs
- BufferBuilder.cs
- fixedPageContentExtractor.cs
- RuntimeIdentifierPropertyAttribute.cs
- RegexInterpreter.cs
- ElementFactory.cs
- CommandBindingCollection.cs
- CopyNamespacesAction.cs
- BoundField.cs
- MetabaseSettings.cs
- IIS7WorkerRequest.cs
- UrlPropertyAttribute.cs
- FillRuleValidation.cs
- ModifiableIteratorCollection.cs
- CopyAction.cs
- HatchBrush.cs
- URLMembershipCondition.cs
- DecimalAnimation.cs
- List.cs
- listitem.cs
- ToolboxItemFilterAttribute.cs
- ControlBuilderAttribute.cs
- XPathEmptyIterator.cs
- NumberAction.cs
- ExcludeFromCodeCoverageAttribute.cs
- EntityDataSourceStatementEditorForm.cs
- UrlAuthFailedErrorFormatter.cs
- SqlFactory.cs
- Triplet.cs
- DigitShape.cs
- TaskScheduler.cs
- TableRowGroupCollection.cs
- AuthorizationRule.cs
- FrameworkPropertyMetadata.cs
- COM2Properties.cs
- DatatypeImplementation.cs
- XmlAttributes.cs
- ScaleTransform.cs
- MdImport.cs
- DataColumnChangeEvent.cs
- BinaryUtilClasses.cs
- DBSqlParserTable.cs
- TreeNodeCollection.cs
- StringResourceManager.cs
- AxImporter.cs
- MetadataProperty.cs
- QuaternionKeyFrameCollection.cs
- UnitySerializationHolder.cs
- BaseParaClient.cs
- odbcmetadatacolumnnames.cs
- DateTimeConstantAttribute.cs
- PrimaryKeyTypeConverter.cs
- FixedSOMLineCollection.cs
- DefaultMemberAttribute.cs
- Error.cs
- WindowsEditBox.cs
- Queue.cs
- GeneralTransform3D.cs