Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / CheckBox.cs / 1458001 / 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); SetCurrentValueInternal(IsCheckedProperty, BooleanBoxes.TrueBox); } else if (e.Key == Key.OemMinus || e.Key == Key.Subtract) { e.Handled = true; ClearValue(IsPressedPropertyKey); SetCurrentValueInternal(IsCheckedProperty, BooleanBoxes.FalseBox); } } } ////// 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); SetCurrentValueInternal(IsCheckedProperty, BooleanBoxes.TrueBox); } else if (e.Key == Key.OemMinus || e.Key == Key.Subtract) { e.Handled = true; ClearValue(IsPressedPropertyKey); SetCurrentValueInternal(IsCheckedProperty, BooleanBoxes.FalseBox); } } } ////// 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
- AuthenticationConfig.cs
- NavigationEventArgs.cs
- CheckoutException.cs
- SourceInterpreter.cs
- ToolStripScrollButton.cs
- SEHException.cs
- SpotLight.cs
- DirectionalLight.cs
- StateRuntime.cs
- SafeNativeMethods.cs
- DispatcherEventArgs.cs
- DialogResultConverter.cs
- PaperSize.cs
- bindurihelper.cs
- PersonalizableAttribute.cs
- InternalConfigSettingsFactory.cs
- WebPartVerbCollection.cs
- ImageButton.cs
- BrowserTree.cs
- DetailsViewUpdateEventArgs.cs
- SmtpAuthenticationManager.cs
- Vector3DKeyFrameCollection.cs
- DynamicRenderer.cs
- IUnknownConstantAttribute.cs
- HostSecurityManager.cs
- Pool.cs
- OutputCacheProfile.cs
- ManagementInstaller.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- CompareInfo.cs
- AnonymousIdentificationSection.cs
- TextTreePropertyUndoUnit.cs
- RC2CryptoServiceProvider.cs
- RelatedImageListAttribute.cs
- HyperLinkStyle.cs
- ScopedKnownTypes.cs
- RegexNode.cs
- Message.cs
- StorageAssociationSetMapping.cs
- PackageFilter.cs
- SkinBuilder.cs
- DynamicEntity.cs
- InputMethodStateChangeEventArgs.cs
- AsyncOperation.cs
- AnimationException.cs
- ISFTagAndGuidCache.cs
- Int64AnimationUsingKeyFrames.cs
- Rect.cs
- ResourceDescriptionAttribute.cs
- WebPartCollection.cs
- SerializationStore.cs
- HandleExceptionArgs.cs
- BufferBuilder.cs
- ContextMarshalException.cs
- XmlUtil.cs
- UpdateCompiler.cs
- IFlowDocumentViewer.cs
- BinaryMessageEncodingBindingElement.cs
- OptionalMessageQuery.cs
- MDIClient.cs
- AdapterSwitches.cs
- EventSinkActivityDesigner.cs
- Membership.cs
- DecoderFallbackWithFailureFlag.cs
- _RegBlobWebProxyDataBuilder.cs
- DatagridviewDisplayedBandsData.cs
- FreezableOperations.cs
- _TLSstream.cs
- TextDecorationCollection.cs
- DrawingAttributeSerializer.cs
- MeshGeometry3D.cs
- SoapIncludeAttribute.cs
- cryptoapiTransform.cs
- IconBitmapDecoder.cs
- externdll.cs
- EntityDataSourceWrapperPropertyDescriptor.cs
- PtsCache.cs
- EdmFunction.cs
- MatrixTransform.cs
- DataGridViewMethods.cs
- Int64Animation.cs
- SchemaManager.cs
- QueueTransferProtocol.cs
- ToolStripOverflowButton.cs
- ImageDrawing.cs
- TableRow.cs
- ParenthesizePropertyNameAttribute.cs
- Utils.cs
- DispatcherEventArgs.cs
- UrlAuthFailureHandler.cs
- WindowHideOrCloseTracker.cs
- updateconfighost.cs
- X509WindowsSecurityToken.cs
- activationcontext.cs
- KeyValueSerializer.cs
- SignatureHelper.cs
- TypeConstant.cs
- ToolStripInSituService.cs
- SqlBulkCopyColumnMapping.cs
- AppDomain.cs