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
- RangeValuePattern.cs
- Base64Encoder.cs
- SystemInformation.cs
- SkewTransform.cs
- ProxySimple.cs
- ElementHostPropertyMap.cs
- Metadata.cs
- SqlTriggerContext.cs
- TextPenaltyModule.cs
- GridViewSelectEventArgs.cs
- DropShadowEffect.cs
- ReadContentAsBinaryHelper.cs
- TransformedBitmap.cs
- OleDbConnection.cs
- ImpersonateTokenRef.cs
- AsnEncodedData.cs
- DocumentPageHost.cs
- HtmlProps.cs
- XmlSerializationWriter.cs
- SessionEndingEventArgs.cs
- Icon.cs
- RowVisual.cs
- UIElementParaClient.cs
- ProxyManager.cs
- MimeBasePart.cs
- NodeInfo.cs
- ViewManager.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- CodeTypeReferenceCollection.cs
- BinaryFormatterWriter.cs
- webbrowsersite.cs
- AtomServiceDocumentSerializer.cs
- VisualStyleRenderer.cs
- ToolboxItemLoader.cs
- WindowPatternIdentifiers.cs
- Int32Storage.cs
- XmlQueryType.cs
- UnmanagedMemoryStreamWrapper.cs
- Timer.cs
- SiteMapNode.cs
- WindowsRebar.cs
- XmlnsDictionary.cs
- WindowsRichEditRange.cs
- EventPropertyMap.cs
- DbConnectionPoolCounters.cs
- GatewayDefinition.cs
- HtmlInputPassword.cs
- RegexCaptureCollection.cs
- COSERVERINFO.cs
- StandardMenuStripVerb.cs
- TypeForwardedFromAttribute.cs
- EntityDataSourceDesignerHelper.cs
- SettingsPropertyWrongTypeException.cs
- Content.cs
- ComplexObject.cs
- Propagator.JoinPropagator.cs
- Operand.cs
- AnchorEditor.cs
- SudsCommon.cs
- Activity.cs
- ExecutedRoutedEventArgs.cs
- ToolStripDesigner.cs
- MetadataPropertyAttribute.cs
- TemplateField.cs
- ParameterRetriever.cs
- RenderData.cs
- MdiWindowListStrip.cs
- ClientProxyGenerator.cs
- XPathSelfQuery.cs
- GeneralTransform3DGroup.cs
- SafeFileMapViewHandle.cs
- Pkcs7Recipient.cs
- ComPlusInstanceProvider.cs
- StateBag.cs
- PostBackTrigger.cs
- CodeTryCatchFinallyStatement.cs
- Padding.cs
- FacetDescriptionElement.cs
- DispatchWrapper.cs
- SortFieldComparer.cs
- BindingMemberInfo.cs
- RequestCache.cs
- TraceInternal.cs
- BidirectionalDictionary.cs
- DataGridPageChangedEventArgs.cs
- LambdaCompiler.Unary.cs
- CaseInsensitiveOrdinalStringComparer.cs
- UserControl.cs
- PackWebRequest.cs
- AnnotationResourceChangedEventArgs.cs
- ManagementObjectCollection.cs
- brushes.cs
- SQLChars.cs
- DocumentPageViewAutomationPeer.cs
- RevocationPoint.cs
- TypeUtil.cs
- HostingEnvironmentException.cs
- Annotation.cs
- ConfigurationSectionGroup.cs
- Internal.cs