Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- XPathNodePointer.cs
- TypeListConverter.cs
- SoapTypeAttribute.cs
- BindingBase.cs
- XmlDownloadManager.cs
- UIAgentCrashedException.cs
- ScrollBar.cs
- BitmapScalingModeValidation.cs
- NamespaceMapping.cs
- SiteMapNodeItem.cs
- PaperSource.cs
- PrintController.cs
- IntermediatePolicyValidator.cs
- JsonReaderWriterFactory.cs
- UrlPropertyAttribute.cs
- Rect3D.cs
- SqlInfoMessageEvent.cs
- ImageCodecInfo.cs
- TextParaLineResult.cs
- XmlAnyElementAttribute.cs
- HighlightOverlayGlyph.cs
- FixedMaxHeap.cs
- BeginSelectCardRequest.cs
- SystemIPv4InterfaceProperties.cs
- BuildProviderCollection.cs
- Int32Rect.cs
- Literal.cs
- CannotUnloadAppDomainException.cs
- SrgsNameValueTag.cs
- WorkflowRuntimeService.cs
- ToolStripButton.cs
- DataAdapter.cs
- GenericPrincipal.cs
- DataRecordObjectView.cs
- WebBrowserNavigatedEventHandler.cs
- StorageComplexPropertyMapping.cs
- AutoSizeToolBoxItem.cs
- WmfPlaceableFileHeader.cs
- ToolboxItemCollection.cs
- UserPreferenceChangingEventArgs.cs
- BuildManager.cs
- PropertyEmitter.cs
- StreamSecurityUpgradeAcceptorBase.cs
- ChannelManager.cs
- NetTcpSecurityElement.cs
- OptimalTextSource.cs
- HtmlAnchor.cs
- UrlMappingsModule.cs
- DocumentXmlWriter.cs
- OperationAbortedException.cs
- ConvertBinder.cs
- MarkupCompilePass1.cs
- ServiceDescriptionSerializer.cs
- RealizationDrawingContextWalker.cs
- WebMethodAttribute.cs
- Signature.cs
- PreviewPrintController.cs
- SimplePropertyEntry.cs
- SafeFindHandle.cs
- ViewStateModeByIdAttribute.cs
- QueryCacheKey.cs
- SiteMapPath.cs
- InstanceNameConverter.cs
- WebResponse.cs
- DataGridAddNewRow.cs
- XmlSecureResolver.cs
- InfoCardClaim.cs
- TextModifier.cs
- SoapTypeAttribute.cs
- StringDictionary.cs
- SHA1.cs
- RangeBaseAutomationPeer.cs
- DataChangedEventManager.cs
- ContainerSelectorGlyph.cs
- FormViewPageEventArgs.cs
- SerializationFieldInfo.cs
- MetaData.cs
- TableItemProviderWrapper.cs
- errorpatternmatcher.cs
- Margins.cs
- SizeAnimationBase.cs
- BamlVersionHeader.cs
- IpcChannelHelper.cs
- PtsHost.cs
- _AuthenticationState.cs
- NullableFloatAverageAggregationOperator.cs
- EventSourceCreationData.cs
- KnownColorTable.cs
- ConfigurationManagerHelper.cs
- AppAction.cs
- Environment.cs
- TextRangeSerialization.cs
- CommunicationObjectManager.cs
- UnmanagedMemoryAccessor.cs
- HierarchicalDataBoundControl.cs
- AppDomainProtocolHandler.cs
- WorkflowControlClient.cs
- ServicePointManager.cs
- Events.cs
- UriWriter.cs