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
- ClientEventManager.cs
- DataTemplate.cs
- Quaternion.cs
- CaseInsensitiveOrdinalStringComparer.cs
- ScalarConstant.cs
- WSTrustFeb2005.cs
- XsdBuildProvider.cs
- IntPtr.cs
- OracleConnection.cs
- BuildManagerHost.cs
- SqlClientMetaDataCollectionNames.cs
- SettingsAttributes.cs
- WsdlHelpGeneratorElement.cs
- GroupItem.cs
- ImageKeyConverter.cs
- SqlMetaData.cs
- PrinterResolution.cs
- GeneralTransform.cs
- X509CertificateCollection.cs
- RootBrowserWindow.cs
- CreateUserErrorEventArgs.cs
- SchemaImporter.cs
- StrictModeSecurityHeaderElementInferenceEngine.cs
- webbrowsersite.cs
- WebBaseEventKeyComparer.cs
- WaitHandleCannotBeOpenedException.cs
- SecurityTokenRequirement.cs
- FolderBrowserDialog.cs
- NodeFunctions.cs
- TextSpan.cs
- Module.cs
- DrawingVisual.cs
- StandardCommands.cs
- BuildTopDownAttribute.cs
- ValidationRuleCollection.cs
- Vector.cs
- DataAdapter.cs
- JoinElimination.cs
- ToggleButtonAutomationPeer.cs
- SelectionList.cs
- EntitySqlQueryCacheKey.cs
- ProviderCollection.cs
- Avt.cs
- xdrvalidator.cs
- TokenCreationException.cs
- BrushConverter.cs
- XmlDataDocument.cs
- SafePipeHandle.cs
- CodeDirectiveCollection.cs
- WorkflowApplicationEventArgs.cs
- OleDbDataAdapter.cs
- CommonRemoteMemoryBlock.cs
- OleDbCommand.cs
- ObjectListCommandCollection.cs
- HierarchicalDataBoundControl.cs
- GridProviderWrapper.cs
- DependencyProperty.cs
- DataGridColumnHeadersPresenter.cs
- XpsImageSerializationService.cs
- ResolveResponseInfo.cs
- ChannelProtectionRequirements.cs
- IDispatchConstantAttribute.cs
- ConfigurationElementProperty.cs
- MediaTimeline.cs
- SettingsPropertyNotFoundException.cs
- XmlReflectionImporter.cs
- PropertyNames.cs
- InputBuffer.cs
- GenerateDerivedKeyRequest.cs
- DnsPermission.cs
- IPipelineRuntime.cs
- SymmetricAlgorithm.cs
- TextServicesLoader.cs
- SecurityTokenException.cs
- XmlCharType.cs
- Wizard.cs
- ObjectDataSourceSelectingEventArgs.cs
- XmlWrappingReader.cs
- GeneralTransform.cs
- ScrollEventArgs.cs
- DataTableTypeConverter.cs
- RoleManagerEventArgs.cs
- Variant.cs
- DesignerTransaction.cs
- UpDownBase.cs
- WindowsListView.cs
- TdsValueSetter.cs
- ConfigXmlCDataSection.cs
- CLSCompliantAttribute.cs
- MD5Cng.cs
- ObservableDictionary.cs
- ObservableCollection.cs
- HtmlProps.cs
- OrderedDictionary.cs
- SmiXetterAccessMap.cs
- EventItfInfo.cs
- TreePrinter.cs
- CodeIdentifier.cs
- Transform3D.cs
- StoragePropertyMapping.cs