Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / System / Windows / Controls / CheckBox.cs / 1 / CheckBox.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.ComponentModel; using System.Windows.Threading; using System.Windows.Automation; using System.Windows.Controls.Primitives; using System.Windows; using System.Windows.Input; using System.Windows.Media; using MS.Utility; using MS.Internal.KnownBoxes; // Disable CS3001: Warning as Error: not CLS-compliant #pragma warning disable 3001 namespace System.Windows.Controls { #region CheckBox class ////// Use a CheckBox to give the user an option, such as true/false. /// CheckBox allow the user to choose from a list of options. /// CheckBox controls let the user pick a combination of options. /// [DefaultEvent("CheckStateChanged")] [Localizability(LocalizationCategory.CheckBox)] public class CheckBox : ToggleButton { #region Constructors static CheckBox() { // Set the default Style DefaultStyleKeyProperty.OverrideMetadata(typeof(CheckBox), new FrameworkPropertyMetadata(typeof(CheckBox))); _dType = DependencyObjectType.FromSystemTypeInternal(typeof(CheckBox)); KeyboardNavigation.AcceptsReturnProperty.OverrideMetadata(typeof(CheckBox), new FrameworkPropertyMetadata(BooleanBoxes.FalseBox)); } ////// Default CheckBox constructor /// ////// Automatic determination of current Dispatcher. Use alternative constructor /// that accepts a Dispatcher for best performance. /// public CheckBox() : base() { } #endregion #region Override methods ////// Creates AutomationPeer ( protected override System.Windows.Automation.Peers.AutomationPeer OnCreateAutomationPeer() { return new System.Windows.Automation.Peers.CheckBoxAutomationPeer(this); } ///) /// /// This is the method that responds to the KeyDown event. /// /// protected override void OnKeyDown(KeyEventArgs e) { base.OnKeyDown(e); // Add aditional keys "+" and "-" when we are not in IsThreeState mode if (!IsThreeState) { if (e.Key == Key.OemPlus || e.Key == Key.Add) { e.Handled = true; ClearValue(IsPressedPropertyKey); IsChecked = true; } else if (e.Key == Key.OemMinus || e.Key == Key.Subtract) { e.Handled = true; ClearValue(IsPressedPropertyKey); IsChecked = false; } } } ////// The Access key for this control was invoked. /// /// protected override void OnAccessKey(AccessKeyEventArgs e) { if (!IsKeyboardFocused) { Focus(); } base.OnAccessKey(e); } #endregion #region Data #endregion #region DTypeThemeStyleKey // Returns the DependencyObjectType for the registered ThemeStyleKey's default // value. Controls will override this method to return approriate types. internal override DependencyObjectType DTypeThemeStyleKey { get { return _dType; } } private static DependencyObjectType _dType; #endregion DTypeThemeStyleKey } #endregion CheckBox class } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.ComponentModel; using System.Windows.Threading; using System.Windows.Automation; using System.Windows.Controls.Primitives; using System.Windows; using System.Windows.Input; using System.Windows.Media; using MS.Utility; using MS.Internal.KnownBoxes; // Disable CS3001: Warning as Error: not CLS-compliant #pragma warning disable 3001 namespace System.Windows.Controls { #region CheckBox class ////// Use a CheckBox to give the user an option, such as true/false. /// CheckBox allow the user to choose from a list of options. /// CheckBox controls let the user pick a combination of options. /// [DefaultEvent("CheckStateChanged")] [Localizability(LocalizationCategory.CheckBox)] public class CheckBox : ToggleButton { #region Constructors static CheckBox() { // Set the default Style DefaultStyleKeyProperty.OverrideMetadata(typeof(CheckBox), new FrameworkPropertyMetadata(typeof(CheckBox))); _dType = DependencyObjectType.FromSystemTypeInternal(typeof(CheckBox)); KeyboardNavigation.AcceptsReturnProperty.OverrideMetadata(typeof(CheckBox), new FrameworkPropertyMetadata(BooleanBoxes.FalseBox)); } ////// Default CheckBox constructor /// ////// Automatic determination of current Dispatcher. Use alternative constructor /// that accepts a Dispatcher for best performance. /// public CheckBox() : base() { } #endregion #region Override methods ////// Creates AutomationPeer ( protected override System.Windows.Automation.Peers.AutomationPeer OnCreateAutomationPeer() { return new System.Windows.Automation.Peers.CheckBoxAutomationPeer(this); } ///) /// /// This is the method that responds to the KeyDown event. /// /// protected override void OnKeyDown(KeyEventArgs e) { base.OnKeyDown(e); // Add aditional keys "+" and "-" when we are not in IsThreeState mode if (!IsThreeState) { if (e.Key == Key.OemPlus || e.Key == Key.Add) { e.Handled = true; ClearValue(IsPressedPropertyKey); IsChecked = true; } else if (e.Key == Key.OemMinus || e.Key == Key.Subtract) { e.Handled = true; ClearValue(IsPressedPropertyKey); IsChecked = false; } } } ////// The Access key for this control was invoked. /// /// protected override void OnAccessKey(AccessKeyEventArgs e) { if (!IsKeyboardFocused) { Focus(); } base.OnAccessKey(e); } #endregion #region Data #endregion #region DTypeThemeStyleKey // Returns the DependencyObjectType for the registered ThemeStyleKey's default // value. Controls will override this method to return approriate types. internal override DependencyObjectType DTypeThemeStyleKey { get { return _dType; } } private static DependencyObjectType _dType; #endregion DTypeThemeStyleKey } #endregion CheckBox class } // 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
- GeneralTransform2DTo3DTo2D.cs
- RtType.cs
- MapPathBasedVirtualPathProvider.cs
- GeneralTransformGroup.cs
- RoleGroupCollection.cs
- DispatcherExceptionFilterEventArgs.cs
- InternalSendMessage.cs
- TextShapeableCharacters.cs
- TextSchema.cs
- ButtonRenderer.cs
- PKCS1MaskGenerationMethod.cs
- CommonRemoteMemoryBlock.cs
- IProducerConsumerCollection.cs
- GcSettings.cs
- Size3DConverter.cs
- OneOf.cs
- BufferedOutputStream.cs
- PolygonHotSpot.cs
- AppDomainEvidenceFactory.cs
- DrawingGroup.cs
- ObjectToIdCache.cs
- ToolStripSystemRenderer.cs
- TypeTypeConverter.cs
- SecurityContextSecurityToken.cs
- ConfigurationSectionGroup.cs
- Matrix3D.cs
- OracleParameterCollection.cs
- FastPropertyAccessor.cs
- XmlHierarchyData.cs
- _NTAuthentication.cs
- SafePEFileHandle.cs
- DataContractAttribute.cs
- HtmlEmptyTagControlBuilder.cs
- WizardStepBase.cs
- TrackingRecord.cs
- Content.cs
- DataTableNewRowEvent.cs
- ExtendLockCommand.cs
- XmlIterators.cs
- LinqDataSourceView.cs
- ValueOfAction.cs
- AdjustableArrowCap.cs
- ConfigXmlComment.cs
- DatagridviewDisplayedBandsData.cs
- RectangleF.cs
- TableLayoutSettingsTypeConverter.cs
- XmlKeywords.cs
- KeyGestureValueSerializer.cs
- OpenTypeCommon.cs
- NotifyCollectionChangedEventArgs.cs
- DateTimeOffsetStorage.cs
- InstancePersistence.cs
- Point3DValueSerializer.cs
- ByteKeyFrameCollection.cs
- LoginViewDesigner.cs
- RequestCacheEntry.cs
- StyleTypedPropertyAttribute.cs
- UnsafeNativeMethods.cs
- AndCondition.cs
- TypeBuilder.cs
- LeafCellTreeNode.cs
- PlaceHolder.cs
- ObjRef.cs
- TextDecorationLocationValidation.cs
- PathFigureCollection.cs
- TextCompositionManager.cs
- NativeWindow.cs
- WorkflowValidationFailedException.cs
- BitmapEffectInput.cs
- EventSourceCreationData.cs
- HighContrastHelper.cs
- ParameterElement.cs
- ElementHost.cs
- ValueQuery.cs
- FileSystemEventArgs.cs
- EdmRelationshipNavigationPropertyAttribute.cs
- XmlAnyAttributeAttribute.cs
- ButtonField.cs
- MetaType.cs
- Gdiplus.cs
- SatelliteContractVersionAttribute.cs
- AnnotationService.cs
- BaseTemplateCodeDomTreeGenerator.cs
- Graphics.cs
- ContentType.cs
- StreamInfo.cs
- ServiceHttpHandlerFactory.cs
- TextEditorThreadLocalStore.cs
- MruCache.cs
- MenuItemStyle.cs
- OlePropertyStructs.cs
- XmlNamespaceMappingCollection.cs
- SafeBitVector32.cs
- DataBoundControl.cs
- TextFragmentEngine.cs
- SqlCacheDependencyDatabase.cs
- ProtectedConfiguration.cs
- DelegateArgumentReference.cs
- SymDocumentType.cs
- ResourceManagerWrapper.cs