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
- SliderAutomationPeer.cs
- FastEncoderStatics.cs
- DependencyObjectProvider.cs
- ObjectDataProvider.cs
- ResolvedKeyFrameEntry.cs
- BulletedListDesigner.cs
- DataViewSetting.cs
- ToolboxBitmapAttribute.cs
- BitmapSizeOptions.cs
- DateTimeFormatInfo.cs
- PropertyPushdownHelper.cs
- IgnoreSection.cs
- DefaultValidator.cs
- MonthCalendar.cs
- XmlIncludeAttribute.cs
- ListViewItem.cs
- PartialCachingAttribute.cs
- OperatingSystem.cs
- Document.cs
- PopOutPanel.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- clipboard.cs
- SmiConnection.cs
- SerializationAttributes.cs
- XPathDocumentIterator.cs
- DeploymentSection.cs
- CredentialCache.cs
- EntitySqlException.cs
- OracleParameterBinding.cs
- HtmlLinkAdapter.cs
- ExpressionLink.cs
- PageThemeParser.cs
- DetailsViewUpdatedEventArgs.cs
- WebBrowserNavigatingEventHandler.cs
- ListViewItem.cs
- HostingEnvironmentException.cs
- PriorityQueue.cs
- WebErrorHandler.cs
- DataGridTextBoxColumn.cs
- DesignerMetadata.cs
- PartEditor.cs
- WindowsGraphics2.cs
- Parsers.cs
- EditorPartChrome.cs
- DecimalAnimationUsingKeyFrames.cs
- SafeRightsManagementQueryHandle.cs
- TryLoadRunnableWorkflowCommand.cs
- GlyphRunDrawing.cs
- GridViewColumn.cs
- EntityStoreSchemaFilterEntry.cs
- ChangeProcessor.cs
- DbInsertCommandTree.cs
- DataTemplate.cs
- RoleGroup.cs
- ObjectStateEntryDbDataRecord.cs
- WebHttpBinding.cs
- ConstrainedDataObject.cs
- ScopedKnownTypes.cs
- MD5CryptoServiceProvider.cs
- UserControlAutomationPeer.cs
- TextEditorContextMenu.cs
- NativeDirectoryServicesQueryAPIs.cs
- ConditionalAttribute.cs
- COM2ExtendedBrowsingHandler.cs
- Attribute.cs
- SqlGenerator.cs
- ControlValuePropertyAttribute.cs
- BooleanConverter.cs
- XmlBoundElement.cs
- StaticSiteMapProvider.cs
- DataGridViewDataConnection.cs
- ExpressionBinding.cs
- DataGridViewCellValidatingEventArgs.cs
- CompositeTypefaceMetrics.cs
- OperationAbortedException.cs
- PreviewPrintController.cs
- WindowsScrollBar.cs
- DbDataRecord.cs
- TemplateXamlParser.cs
- ZipIOExtraFieldPaddingElement.cs
- ExpressionTable.cs
- ExtractorMetadata.cs
- Int32AnimationBase.cs
- ListViewHitTestInfo.cs
- FontSource.cs
- SpeechUI.cs
- TrustLevelCollection.cs
- ConstructorArgumentAttribute.cs
- GenericIdentity.cs
- IndexedEnumerable.cs
- IPEndPointCollection.cs
- SHA1CryptoServiceProvider.cs
- PrintDialog.cs
- TypeConverters.cs
- linebase.cs
- DetailsViewUpdatedEventArgs.cs
- Annotation.cs
- Size3DConverter.cs
- UTF32Encoding.cs
- DocumentSequenceHighlightLayer.cs