Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / CheckBox.cs / 1458001 / 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); SetCurrentValueInternal(IsCheckedProperty, BooleanBoxes.TrueBox); } else if (e.Key == Key.OemMinus || e.Key == Key.Subtract) { e.Handled = true; ClearValue(IsPressedPropertyKey); SetCurrentValueInternal(IsCheckedProperty, BooleanBoxes.FalseBox); } } } ////// 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
- MissingMethodException.cs
- CatalogPart.cs
- RectangleHotSpot.cs
- AtomEntry.cs
- LineSegment.cs
- UnauthorizedWebPart.cs
- StateWorkerRequest.cs
- ResourceReader.cs
- BitVector32.cs
- ControlBindingsConverter.cs
- FormViewUpdatedEventArgs.cs
- OrderByLifter.cs
- AutomationPattern.cs
- DataGridViewColumnHeaderCell.cs
- DataControlFieldTypeEditor.cs
- ExpressionBuilder.cs
- LayoutDump.cs
- ProcessModuleCollection.cs
- ManagementOptions.cs
- UserNameServiceElement.cs
- ButtonColumn.cs
- ByteConverter.cs
- StateWorkerRequest.cs
- LockedAssemblyCache.cs
- TrustLevelCollection.cs
- XmlWriter.cs
- CodeAttributeDeclaration.cs
- PanelStyle.cs
- Qualifier.cs
- SpellerHighlightLayer.cs
- RemotingHelper.cs
- MenuBase.cs
- ArgumentFixer.cs
- TimeSpanMinutesConverter.cs
- SQLMoneyStorage.cs
- HttpWebRequestElement.cs
- X509Utils.cs
- ExpressionCopier.cs
- SendingRequestEventArgs.cs
- XamlToRtfParser.cs
- MSAAWinEventWrap.cs
- ValuePatternIdentifiers.cs
- DbConnectionPoolOptions.cs
- MenuItemBindingCollection.cs
- ParseHttpDate.cs
- TextBlockAutomationPeer.cs
- BitArray.cs
- DispatcherEventArgs.cs
- DateTimeOffset.cs
- ToolStripRendererSwitcher.cs
- metadatamappinghashervisitor.cs
- XmlNamespaceManager.cs
- HttpContextWrapper.cs
- FilterException.cs
- AttributeEmitter.cs
- ProfileSettings.cs
- SerializationAttributes.cs
- SerializationFieldInfo.cs
- DataControlCommands.cs
- EntityFrameworkVersions.cs
- EdmComplexPropertyAttribute.cs
- ValueTypeFixupInfo.cs
- GradientSpreadMethodValidation.cs
- EventDescriptorCollection.cs
- MeshGeometry3D.cs
- TimeStampChecker.cs
- EdmError.cs
- SemanticKeyElement.cs
- DateTimePicker.cs
- XPathBinder.cs
- WindowsRichEdit.cs
- RadioButton.cs
- BrowserCapabilitiesFactoryBase.cs
- __ConsoleStream.cs
- ZipIOExtraFieldZip64Element.cs
- ToolStripArrowRenderEventArgs.cs
- OpenFileDialog.cs
- CalendarDateRange.cs
- Math.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- handlecollector.cs
- MailFileEditor.cs
- PageStatePersister.cs
- RawUIStateInputReport.cs
- DataRelation.cs
- _IPv6Address.cs
- GlyphCache.cs
- ScalarConstant.cs
- NativeMethods.cs
- ColumnHeader.cs
- PolicyManager.cs
- OneToOneMappingSerializer.cs
- basenumberconverter.cs
- TextParagraphView.cs
- PageStatePersister.cs
- DescendantBaseQuery.cs
- Vertex.cs
- CriticalFinalizerObject.cs
- ValueUtilsSmi.cs
- FilterableAttribute.cs