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
- DefaultConfirmation.cs
- UnSafeCharBuffer.cs
- Number.cs
- UrlPropertyAttribute.cs
- DataGridColumn.cs
- DataListCommandEventArgs.cs
- ConnectivityStatus.cs
- BindingNavigator.cs
- QueuedDeliveryRequirementsMode.cs
- HandleRef.cs
- ArrangedElementCollection.cs
- SuppressIldasmAttribute.cs
- DataListAutoFormat.cs
- EmulateRecognizeCompletedEventArgs.cs
- SmtpFailedRecipientException.cs
- DeclaredTypeValidatorAttribute.cs
- CodeMemberProperty.cs
- CodeDelegateInvokeExpression.cs
- SecurityException.cs
- UnsafeNativeMethods.cs
- SoapExtension.cs
- SystemFonts.cs
- Point4DConverter.cs
- WebProxyScriptElement.cs
- Switch.cs
- RawAppCommandInputReport.cs
- StringConverter.cs
- IsolatedStorageFile.cs
- LoginView.cs
- ControlBuilder.cs
- DebugInfoGenerator.cs
- Overlapped.cs
- TemplateColumn.cs
- cookiecollection.cs
- TransformedBitmap.cs
- PlatformCulture.cs
- DrawingAttributeSerializer.cs
- RepeatInfo.cs
- TopClause.cs
- RepeaterItemEventArgs.cs
- TreeNodeCollection.cs
- PolicyStatement.cs
- SmtpNetworkElement.cs
- DataGridViewLinkCell.cs
- MarginsConverter.cs
- TextEditorMouse.cs
- CacheAxisQuery.cs
- IisTraceWebEventProvider.cs
- PrintDocument.cs
- IndexedGlyphRun.cs
- DataGridCellInfo.cs
- Cursor.cs
- RemoteWebConfigurationHostStream.cs
- WindowsRebar.cs
- PackageRelationshipCollection.cs
- LongMinMaxAggregationOperator.cs
- Site.cs
- DataKeyArray.cs
- HGlobalSafeHandle.cs
- CodeDirectiveCollection.cs
- thaishape.cs
- PreloadedPackages.cs
- SoapRpcServiceAttribute.cs
- EpmSourceTree.cs
- NativeMethods.cs
- SqlNamer.cs
- TargetException.cs
- UniformGrid.cs
- XPathMessageFilterTable.cs
- PolyLineSegment.cs
- EntityKeyElement.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- ISAPIApplicationHost.cs
- PrintController.cs
- XmlValueConverter.cs
- XsdBuilder.cs
- ImageMap.cs
- GetChildSubtree.cs
- HScrollBar.cs
- MemberProjectionIndex.cs
- UserNameSecurityTokenParameters.cs
- DataContext.cs
- AccessKeyManager.cs
- WebPartConnectionsConfigureVerb.cs
- FlowPosition.cs
- ApplicationHost.cs
- OdbcConnectionStringbuilder.cs
- StringCollection.cs
- ViewManager.cs
- ResolveDuplexCD1AsyncResult.cs
- ThumbAutomationPeer.cs
- IISUnsafeMethods.cs
- X509ChainElement.cs
- Expression.cs
- ColumnMapVisitor.cs
- DispatcherOperation.cs
- SqlConnectionFactory.cs
- ClrPerspective.cs
- MSAANativeProvider.cs
- SerialErrors.cs