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
- BaseTemplateParser.cs
- MouseEvent.cs
- Comparer.cs
- ShutDownListener.cs
- Double.cs
- ListInitExpression.cs
- DatagridviewDisplayedBandsData.cs
- ConnectionManagementElement.cs
- Dispatcher.cs
- FontUnitConverter.cs
- MarkedHighlightComponent.cs
- DependencyObjectProvider.cs
- Track.cs
- DateBoldEvent.cs
- EmptyControlCollection.cs
- BStrWrapper.cs
- ToolStripContentPanelDesigner.cs
- AdornerPresentationContext.cs
- ConnectionOrientedTransportElement.cs
- SqlInternalConnectionSmi.cs
- MasterPageCodeDomTreeGenerator.cs
- TextUtf8RawTextWriter.cs
- ContextItem.cs
- ButtonStandardAdapter.cs
- UDPClient.cs
- FileLoadException.cs
- EntitySetDataBindingList.cs
- SimpleWebHandlerParser.cs
- InputLanguageSource.cs
- DbExpressionBuilder.cs
- WpfSharedXamlSchemaContext.cs
- ConfigXmlText.cs
- ErrorWrapper.cs
- WebEncodingValidator.cs
- Descriptor.cs
- Process.cs
- StylusPointPropertyUnit.cs
- XamlToRtfParser.cs
- ProviderBase.cs
- OLEDB_Enum.cs
- HTMLTextWriter.cs
- AutomationElementCollection.cs
- AutomationEvent.cs
- WpfXamlType.cs
- Common.cs
- LogicalTreeHelper.cs
- RSAPKCS1SignatureFormatter.cs
- Constant.cs
- TrustManager.cs
- SuppressMergeCheckAttribute.cs
- TextPattern.cs
- DataGridViewBand.cs
- StrokeCollectionDefaultValueFactory.cs
- NativeMethods.cs
- CallTemplateAction.cs
- UIPermission.cs
- TdsParameterSetter.cs
- ClientConfigPaths.cs
- UnknownBitmapDecoder.cs
- DocumentAutomationPeer.cs
- TableLayoutCellPaintEventArgs.cs
- ObjectStateFormatter.cs
- PriorityQueue.cs
- FixedStringLookup.cs
- TextTreePropertyUndoUnit.cs
- TabletDeviceInfo.cs
- RemoveStoryboard.cs
- DefaultTextStore.cs
- PrimitiveRenderer.cs
- PartialCachingControl.cs
- EditorZoneBase.cs
- sqlstateclientmanager.cs
- OracleConnectionStringBuilder.cs
- CopyAction.cs
- ClientSession.cs
- TextElementAutomationPeer.cs
- XmlSchemaComplexContentRestriction.cs
- CatalogZoneBase.cs
- SqlExpressionNullability.cs
- UncommonField.cs
- FolderLevelBuildProvider.cs
- SharedMemory.cs
- TextServicesProperty.cs
- EntityReference.cs
- PaperSource.cs
- NotifyInputEventArgs.cs
- EditorResources.cs
- SafeRightsManagementQueryHandle.cs
- AsyncResult.cs
- ContextInformation.cs
- SizeLimitedCache.cs
- NavigationPropertyAccessor.cs
- GridViewUpdatedEventArgs.cs
- OLEDB_Enum.cs
- RadioButton.cs
- TextDecorationCollection.cs
- ResourceManager.cs
- Bookmark.cs
- DataServiceClientException.cs
- VisualState.cs