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
- _OverlappedAsyncResult.cs
- DataTemplate.cs
- RedistVersionInfo.cs
- AccessViolationException.cs
- FamilyMapCollection.cs
- RegistryExceptionHelper.cs
- IgnorePropertiesAttribute.cs
- PersianCalendar.cs
- Vector3D.cs
- ColumnResizeUndoUnit.cs
- HandleExceptionArgs.cs
- EncodingConverter.cs
- WebColorConverter.cs
- ToolStripScrollButton.cs
- TheQuery.cs
- PostBackOptions.cs
- DebugView.cs
- CryptoApi.cs
- TimeEnumHelper.cs
- ErrorStyle.cs
- ApplicationManager.cs
- Addressing.cs
- ObfuscationAttribute.cs
- ISCIIEncoding.cs
- DataServiceCollectionOfT.cs
- Stackframe.cs
- WebPartDeleteVerb.cs
- ResXBuildProvider.cs
- StackOverflowException.cs
- CommonGetThemePartSize.cs
- WindowVisualStateTracker.cs
- ToolStripPanelRenderEventArgs.cs
- LinkButton.cs
- CapabilitiesAssignment.cs
- CalendarDay.cs
- SoapExtensionTypeElement.cs
- PasswordRecovery.cs
- Validator.cs
- Configuration.cs
- OracleRowUpdatedEventArgs.cs
- ErrorWebPart.cs
- SelectionItemProviderWrapper.cs
- ToolStripPanelRenderEventArgs.cs
- CategoryGridEntry.cs
- DesignerLoader.cs
- HostingEnvironmentWrapper.cs
- MILUtilities.cs
- BasicHttpSecurityMode.cs
- EpmCustomContentWriterNodeData.cs
- ReadWriteSpinLock.cs
- PerformanceCounters.cs
- HwndSource.cs
- WebEventCodes.cs
- CalendarDateChangedEventArgs.cs
- TextEditorCharacters.cs
- DefinitionUpdate.cs
- GroupBoxRenderer.cs
- ValueQuery.cs
- DebugHandleTracker.cs
- DataReceivedEventArgs.cs
- PathBox.cs
- MenuCommandsChangedEventArgs.cs
- ICspAsymmetricAlgorithm.cs
- XmlQueryContext.cs
- AutomationProperties.cs
- CultureInfo.cs
- EncoderNLS.cs
- ReflectionServiceProvider.cs
- RepeaterItemEventArgs.cs
- SchemaInfo.cs
- BamlResourceContent.cs
- SystemIPInterfaceStatistics.cs
- TextParagraph.cs
- DSASignatureDeformatter.cs
- ItemContainerProviderWrapper.cs
- DataReceivedEventArgs.cs
- CategoryAttribute.cs
- XmlDocumentSchema.cs
- ReflectionPermission.cs
- ConstructorExpr.cs
- jithelpers.cs
- ProtocolsConfiguration.cs
- DesignOnlyAttribute.cs
- ImageField.cs
- TypefaceCollection.cs
- EtwTrackingBehavior.cs
- SafeSecurityHelper.cs
- OpacityConverter.cs
- StatusStrip.cs
- Main.cs
- HtmlInputButton.cs
- ApplicationServiceManager.cs
- RawMouseInputReport.cs
- EnvelopedPkcs7.cs
- XmlnsCache.cs
- LineBreak.cs
- BaseDataBoundControl.cs
- AssemblyInfo.cs
- diagnosticsswitches.cs
- IntSecurity.cs