Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- DrawingContextDrawingContextWalker.cs
- DesignRelation.cs
- XmlRootAttribute.cs
- CssTextWriter.cs
- COAUTHINFO.cs
- TransactionsSectionGroup.cs
- basenumberconverter.cs
- ListBoxItemAutomationPeer.cs
- ClassGenerator.cs
- NavigateEvent.cs
- TypeResolvingOptionsAttribute.cs
- XmlSchemaGroupRef.cs
- ThreadExceptionEvent.cs
- Rotation3D.cs
- shaperfactory.cs
- SafePEFileHandle.cs
- Point3DValueSerializer.cs
- QilVisitor.cs
- SocketManager.cs
- Color.cs
- MonitoringDescriptionAttribute.cs
- MergeFilterQuery.cs
- PcmConverter.cs
- Blend.cs
- ClientBuildManager.cs
- ChangePasswordAutoFormat.cs
- SystemTcpConnection.cs
- streamingZipPartStream.cs
- InputBindingCollection.cs
- PocoEntityKeyStrategy.cs
- SqlInfoMessageEvent.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- ResourceAssociationSetEnd.cs
- DeviceContext.cs
- IPGlobalProperties.cs
- ApplyTemplatesAction.cs
- DriveInfo.cs
- DefaultAssemblyResolver.cs
- Group.cs
- HMACSHA256.cs
- MaskedTextBox.cs
- Bidi.cs
- MdImport.cs
- TreeViewHitTestInfo.cs
- ExcludeFromCodeCoverageAttribute.cs
- GenericAuthenticationEventArgs.cs
- DataGridViewComboBoxColumn.cs
- XmlSchemaProviderAttribute.cs
- BrowserDefinition.cs
- ConnectionStringSettingsCollection.cs
- OutOfMemoryException.cs
- PropagatorResult.cs
- LayoutEditorPart.cs
- LayoutInformation.cs
- DbXmlEnabledProviderManifest.cs
- PasswordDeriveBytes.cs
- SecurityNegotiationException.cs
- MaterialGroup.cs
- InfoCardSchemas.cs
- PositiveTimeSpanValidatorAttribute.cs
- ByteAnimationUsingKeyFrames.cs
- DockPanel.cs
- DataPagerFieldItem.cs
- SHA256.cs
- InkCanvasInnerCanvas.cs
- ProcessInfo.cs
- WSHttpBinding.cs
- ChannelManager.cs
- Container.cs
- elementinformation.cs
- Highlights.cs
- TabItemWrapperAutomationPeer.cs
- WindowsListViewGroupSubsetLink.cs
- InfoCardRSAPKCS1KeyExchangeFormatter.cs
- DelegateSerializationHolder.cs
- DataKey.cs
- WorkflowShape.cs
- ResXBuildProvider.cs
- StringDictionary.cs
- GridViewDeletedEventArgs.cs
- TagPrefixInfo.cs
- CachedPathData.cs
- GlyphRunDrawing.cs
- FilterElement.cs
- ArrangedElementCollection.cs
- SingleStorage.cs
- QilPatternVisitor.cs
- BaseCAMarshaler.cs
- DownloadProgressEventArgs.cs
- ActionMessageFilter.cs
- IdnElement.cs
- GeneralTransform3DTo2DTo3D.cs
- TTSVoice.cs
- DesignUtil.cs
- PointAnimation.cs
- DomainLiteralReader.cs
- IChannel.cs
- PropertyConverter.cs
- CodeVariableReferenceExpression.cs
- XmlAttributeProperties.cs