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
- XmlSchemaSubstitutionGroup.cs
- GeometryHitTestResult.cs
- UnsignedPublishLicense.cs
- ObjectStateEntry.cs
- X509AudioLogo.cs
- AccessControlList.cs
- WebHttpBehavior.cs
- DbConnectionPool.cs
- TabletCollection.cs
- TypeForwardedToAttribute.cs
- OdbcError.cs
- SQLInt64Storage.cs
- SmtpNegotiateAuthenticationModule.cs
- CacheOutputQuery.cs
- CompiledRegexRunnerFactory.cs
- WinInetCache.cs
- UTF8Encoding.cs
- DataRecord.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- Control.cs
- DatePickerTextBox.cs
- SqlProfileProvider.cs
- ToggleButton.cs
- ControlEvent.cs
- ClientBuildManagerCallback.cs
- DefaultHttpHandler.cs
- serverconfig.cs
- contentDescriptor.cs
- FtpWebResponse.cs
- Converter.cs
- ToolboxItemAttribute.cs
- WindowsToolbarAsMenu.cs
- URLIdentityPermission.cs
- XXXOnTypeBuilderInstantiation.cs
- HttpConfigurationSystem.cs
- WebGetAttribute.cs
- Memoizer.cs
- QueryResponse.cs
- ObjectContext.cs
- UpdateExpressionVisitor.cs
- DataGridViewDataErrorEventArgs.cs
- ValueUnavailableException.cs
- BamlWriter.cs
- SelectorItemAutomationPeer.cs
- UnsignedPublishLicense.cs
- EntityUtil.cs
- LineGeometry.cs
- ZipFileInfo.cs
- ChannelServices.cs
- ResourcesBuildProvider.cs
- ReflectionTypeLoadException.cs
- Point.cs
- OperationPerformanceCounters.cs
- LingerOption.cs
- UnauthorizedWebPart.cs
- AppDomainAttributes.cs
- AppSettingsReader.cs
- TextTreeRootTextBlock.cs
- Win32PrintDialog.cs
- CapabilitiesSection.cs
- ClickablePoint.cs
- ObjectStateManager.cs
- ZipFileInfoCollection.cs
- SetIndexBinder.cs
- SpotLight.cs
- DateTimeParse.cs
- RankException.cs
- HttpWriter.cs
- TableCellCollection.cs
- AuthenticationException.cs
- DrawingContextFlattener.cs
- ExitEventArgs.cs
- Guid.cs
- WindowsSecurityTokenAuthenticator.cs
- LazyTextWriterCreator.cs
- WebPartCatalogAddVerb.cs
- Size.cs
- UriTemplateLiteralQueryValue.cs
- updatecommandorderer.cs
- SqlDelegatedTransaction.cs
- AutomationElement.cs
- ScalarConstant.cs
- ValidationErrorEventArgs.cs
- ObjectFullSpanRewriter.cs
- ProviderBase.cs
- AutoScrollExpandMessageFilter.cs
- TextBounds.cs
- WebBrowserNavigatingEventHandler.cs
- XmlHelper.cs
- DeflateStreamAsyncResult.cs
- CompleteWizardStep.cs
- LinkedResource.cs
- RuleSettings.cs
- OutputScopeManager.cs
- PerfCounterSection.cs
- PageBreakRecord.cs
- SynchronizedCollection.cs
- NetworkInformationPermission.cs
- WindowShowOrOpenTracker.cs
- AutoGeneratedField.cs