Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- SecureUICommand.cs
- ScriptModule.cs
- CdpEqualityComparer.cs
- ColorAnimationBase.cs
- DataGridViewAdvancedBorderStyle.cs
- XmlAttributeOverrides.cs
- TransformConverter.cs
- Identity.cs
- XmlValidatingReaderImpl.cs
- WorkflowRuntimeServiceElement.cs
- FixedSOMElement.cs
- XmlDataDocument.cs
- ObjectDataSourceFilteringEventArgs.cs
- JsonXmlDataContract.cs
- ProcessProtocolHandler.cs
- AutomationElement.cs
- HttpRawResponse.cs
- WebPartVerb.cs
- DefaultEvaluationContext.cs
- EnvironmentPermission.cs
- SoapCodeExporter.cs
- AncestorChangedEventArgs.cs
- AnimationClock.cs
- ExpandSegmentCollection.cs
- __FastResourceComparer.cs
- ConsoleCancelEventArgs.cs
- CustomSignedXml.cs
- XDRSchema.cs
- ExpressionBuilderContext.cs
- DefaultPrintController.cs
- BrowserCapabilitiesFactoryBase.cs
- PropertyIDSet.cs
- AssemblySettingAttributes.cs
- WinEventHandler.cs
- ExpressionBindingCollection.cs
- CodePageEncoding.cs
- BaseAsyncResult.cs
- XpsFontSerializationService.cs
- Model3DGroup.cs
- CancellationTokenSource.cs
- SqlConnectionManager.cs
- StylusButtonCollection.cs
- WCFModelStrings.Designer.cs
- WebPartEditVerb.cs
- TripleDESCryptoServiceProvider.cs
- NativeCompoundFileAPIs.cs
- XsltSettings.cs
- ResourceDisplayNameAttribute.cs
- NavigationWindowAutomationPeer.cs
- SoapTypeAttribute.cs
- InputProviderSite.cs
- ScrollBarRenderer.cs
- ForEachAction.cs
- BindingFormattingDialog.cs
- ZipPackagePart.cs
- PropertyGroupDescription.cs
- StrongName.cs
- DecimalStorage.cs
- GridProviderWrapper.cs
- Typeface.cs
- UniformGrid.cs
- ApplicationServiceHelper.cs
- ByteStorage.cs
- XmlMapping.cs
- DBCommand.cs
- TemplatedAdorner.cs
- TdsValueSetter.cs
- EncryptedType.cs
- AspNetRouteServiceHttpHandler.cs
- Pair.cs
- EndPoint.cs
- SiteMapNode.cs
- TransformGroup.cs
- AgileSafeNativeMemoryHandle.cs
- WriterOutput.cs
- GeometryConverter.cs
- TransactionWaitAsyncResult.cs
- PartBasedPackageProperties.cs
- OleDbEnumerator.cs
- TreeViewDesigner.cs
- _HeaderInfoTable.cs
- Storyboard.cs
- EditingCoordinator.cs
- ContentValidator.cs
- TransactionScopeDesigner.cs
- PropertyGeneratedEventArgs.cs
- SymbolType.cs
- Int64AnimationUsingKeyFrames.cs
- OrderByBuilder.cs
- SqlConnection.cs
- EmptyEnumerable.cs
- PerfCounters.cs
- TreeViewCancelEvent.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- Graphics.cs
- DataGridDesigner.cs
- CodeDomConfigurationHandler.cs
- Select.cs
- DataMemberListEditor.cs
- VariableElement.cs