Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- EntityCommand.cs
- LineVisual.cs
- Row.cs
- CompiledRegexRunner.cs
- ColumnResizeAdorner.cs
- ColorConvertedBitmap.cs
- WsdlBuildProvider.cs
- LinearKeyFrames.cs
- XmlSchemaGroupRef.cs
- OledbConnectionStringbuilder.cs
- InputQueueChannelAcceptor.cs
- DocumentApplicationDocumentViewer.cs
- datacache.cs
- MobileUserControlDesigner.cs
- DictionaryChange.cs
- TransformerInfo.cs
- QilExpression.cs
- PointLightBase.cs
- InvalidAsynchronousStateException.cs
- StrongNameSignatureInformation.cs
- AppliedDeviceFiltersEditor.cs
- GetPageCompletedEventArgs.cs
- PerformanceCounterTraceRecord.cs
- ToolStripItemRenderEventArgs.cs
- CompressEmulationStream.cs
- DetailsViewDeleteEventArgs.cs
- SiteMapProvider.cs
- InputReportEventArgs.cs
- ContentFileHelper.cs
- WebHttpEndpointElement.cs
- ChannelBuilder.cs
- DateTimeFormat.cs
- TextBreakpoint.cs
- DeviceContexts.cs
- DataDesignUtil.cs
- InheritanceContextHelper.cs
- PtsCache.cs
- HostingEnvironment.cs
- FrameworkElement.cs
- Metadata.cs
- DataSysAttribute.cs
- StrongNameUtility.cs
- Button.cs
- DataViewSettingCollection.cs
- ServicesExceptionNotHandledEventArgs.cs
- StylusDownEventArgs.cs
- ManipulationDevice.cs
- RectValueSerializer.cs
- HtmlHead.cs
- InteropAutomationProvider.cs
- ContractMapping.cs
- ConstantExpression.cs
- NonBatchDirectoryCompiler.cs
- WindowsGraphicsWrapper.cs
- DatagridviewDisplayedBandsData.cs
- TreeNodeStyle.cs
- DependencyPropertyDescriptor.cs
- ResourceDisplayNameAttribute.cs
- XmlConvert.cs
- MouseButton.cs
- EndpointDiscoveryBehavior.cs
- MimeXmlImporter.cs
- ViewCellSlot.cs
- GetPageNumberCompletedEventArgs.cs
- ReflectTypeDescriptionProvider.cs
- InputLanguageProfileNotifySink.cs
- ListViewDataItem.cs
- UncommonField.cs
- DecoderReplacementFallback.cs
- MissingMemberException.cs
- CommentGlyph.cs
- StateManagedCollection.cs
- NodeFunctions.cs
- Adorner.cs
- AffineTransform3D.cs
- SerialPinChanges.cs
- RuntimeArgumentHandle.cs
- IpcClientManager.cs
- InternalConfigHost.cs
- AliasedSlot.cs
- DataServiceException.cs
- TemplateComponentConnector.cs
- EventLogQuery.cs
- SyndicationPerson.cs
- ArgIterator.cs
- ObjectToken.cs
- CacheMemory.cs
- AsymmetricSignatureDeformatter.cs
- ControlPropertyNameConverter.cs
- WindowsFormsDesignerOptionService.cs
- ClipboardProcessor.cs
- SQLGuidStorage.cs
- BooleanExpr.cs
- AesCryptoServiceProvider.cs
- Win32PrintDialog.cs
- Adorner.cs
- ColorContext.cs
- MonitoringDescriptionAttribute.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- OneToOneMappingSerializer.cs