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
- ExpressionPrinter.cs
- TcpTransportBindingElement.cs
- bindurihelper.cs
- SharedPersonalizationStateInfo.cs
- MembershipValidatePasswordEventArgs.cs
- MeasureData.cs
- SocketPermission.cs
- GridItemCollection.cs
- CorrelationManager.cs
- GlobalItem.cs
- RuntimeResourceSet.cs
- IISMapPath.cs
- NavigationProperty.cs
- ClientSettingsProvider.cs
- SqlFileStream.cs
- ListViewTableRow.cs
- DataSourceSerializationException.cs
- TemplateParser.cs
- ClientSideQueueItem.cs
- ResourceAttributes.cs
- ScriptBehaviorDescriptor.cs
- SafeHandles.cs
- BufferedOutputStream.cs
- BamlBinaryWriter.cs
- DrawingCollection.cs
- BinarySerializer.cs
- HtmlEmptyTagControlBuilder.cs
- ExpressionEvaluator.cs
- AxImporter.cs
- TextServicesCompartmentContext.cs
- ColumnBinding.cs
- DataListCommandEventArgs.cs
- OleDragDropHandler.cs
- IImplicitResourceProvider.cs
- DecimalConstantAttribute.cs
- CustomAttribute.cs
- VisualStyleElement.cs
- CommentEmitter.cs
- ClientBuildManagerCallback.cs
- RightsDocument.cs
- OleDbParameter.cs
- MultilineStringConverter.cs
- OperatingSystem.cs
- ActivityValidationServices.cs
- TextAutomationPeer.cs
- InternalConfigRoot.cs
- ColorAnimation.cs
- ToolStripItemRenderEventArgs.cs
- ZoomPercentageConverter.cs
- HeaderLabel.cs
- ManagementExtension.cs
- KnownColorTable.cs
- COMException.cs
- DrawTreeNodeEventArgs.cs
- BaseDataBoundControl.cs
- ImageCodecInfo.cs
- UserNameSecurityToken.cs
- FlowDocumentReader.cs
- ProxyGenerationError.cs
- TimeManager.cs
- ImageListUtils.cs
- BlurBitmapEffect.cs
- AssemblyAttributesGoHere.cs
- TrackingLocationCollection.cs
- TextRangeEdit.cs
- UserPreferenceChangedEventArgs.cs
- DispatchChannelSink.cs
- XmlTextAttribute.cs
- EntitySqlException.cs
- SID.cs
- SmiContextFactory.cs
- RawAppCommandInputReport.cs
- X509Logo.cs
- CmsInterop.cs
- QuaternionAnimation.cs
- DeferrableContentConverter.cs
- ChannelSinkStacks.cs
- PropertyGrid.cs
- CodeSnippetCompileUnit.cs
- Dump.cs
- UnicastIPAddressInformationCollection.cs
- ScriptReferenceBase.cs
- ExpressionHelper.cs
- XpsResource.cs
- WebPartVerbCollection.cs
- ServiceAppDomainAssociationProvider.cs
- Environment.cs
- CanonicalXml.cs
- ObjectItemAssemblyLoader.cs
- AdCreatedEventArgs.cs
- PropertyMappingExceptionEventArgs.cs
- Win32NamedPipes.cs
- PtsHelper.cs
- SendActivityDesigner.cs
- SqlFileStream.cs
- TreeNodeBinding.cs
- LifetimeManager.cs
- SymmetricCryptoHandle.cs
- DashStyles.cs
- ScaleTransform.cs