Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / PreviewKeyDownEventArgs.cs / 1305376 / PreviewKeyDownEventArgs.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System; ////// /// /// public class PreviewKeyDownEventArgs : EventArgs { private readonly Keys _keyData; private bool _isInputKey; ////// Provides data for the PreviewKeyDownEvent /// ////// /// public PreviewKeyDownEventArgs(Keys keyData) { _keyData = keyData; } ///[To be supplied.] ////// /// public bool Alt { get { return (_keyData & Keys.Alt) == Keys.Alt; } } ////// Gets a value indicating whether the ALT key was pressed. /// ////// /// public bool Control { get { return (_keyData & Keys.Control) == Keys.Control; } } ////// Gets a value indicating whether the CTRL key was pressed. /// ////// /// //subhag : changed the behaviour of the KeyCode as per the new requirements. public Keys KeyCode { [ // Keys is discontiguous so we have to use Enum.IsDefined. SuppressMessage("Microsoft.Performance", "CA1803:AvoidCostlyCallsWherePossible") ] get { Keys keyGenerated = _keyData & Keys.KeyCode; // since Keys can be discontiguous, keeping Enum.IsDefined. if (!Enum.IsDefined(typeof(Keys),(int)keyGenerated)) return Keys.None; else return keyGenerated; } } ////// Gets the keyboard code for a ///or /// event. /// /// /// //subhag : added the KeyValue as per the new requirements. public int KeyValue { get { return (int)(_keyData & Keys.KeyCode); } } ////// Gets the keyboard value for a ///or /// event. /// /// /// public Keys KeyData { get { return _keyData; } } ////// Gets the key data for a ///or /// event. /// /// /// public Keys Modifiers { get { return _keyData & Keys.Modifiers; } } ////// Gets the modifier flags for a ///or event. /// This indicates which modifier keys (CTRL, SHIFT, and/or ALT) were pressed. /// /// /// public bool Shift { get { return (_keyData & Keys.Shift) == Keys.Shift; } } public bool IsInputKey { get { return _isInputKey; } set { _isInputKey = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Gets /// a value indicating whether the SHIFT key was pressed. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System; ////// /// /// public class PreviewKeyDownEventArgs : EventArgs { private readonly Keys _keyData; private bool _isInputKey; ////// Provides data for the PreviewKeyDownEvent /// ////// /// public PreviewKeyDownEventArgs(Keys keyData) { _keyData = keyData; } ///[To be supplied.] ////// /// public bool Alt { get { return (_keyData & Keys.Alt) == Keys.Alt; } } ////// Gets a value indicating whether the ALT key was pressed. /// ////// /// public bool Control { get { return (_keyData & Keys.Control) == Keys.Control; } } ////// Gets a value indicating whether the CTRL key was pressed. /// ////// /// //subhag : changed the behaviour of the KeyCode as per the new requirements. public Keys KeyCode { [ // Keys is discontiguous so we have to use Enum.IsDefined. SuppressMessage("Microsoft.Performance", "CA1803:AvoidCostlyCallsWherePossible") ] get { Keys keyGenerated = _keyData & Keys.KeyCode; // since Keys can be discontiguous, keeping Enum.IsDefined. if (!Enum.IsDefined(typeof(Keys),(int)keyGenerated)) return Keys.None; else return keyGenerated; } } ////// Gets the keyboard code for a ///or /// event. /// /// /// //subhag : added the KeyValue as per the new requirements. public int KeyValue { get { return (int)(_keyData & Keys.KeyCode); } } ////// Gets the keyboard value for a ///or /// event. /// /// /// public Keys KeyData { get { return _keyData; } } ////// Gets the key data for a ///or /// event. /// /// /// public Keys Modifiers { get { return _keyData & Keys.Modifiers; } } ////// Gets the modifier flags for a ///or event. /// This indicates which modifier keys (CTRL, SHIFT, and/or ALT) were pressed. /// /// /// public bool Shift { get { return (_keyData & Keys.Shift) == Keys.Shift; } } public bool IsInputKey { get { return _isInputKey; } set { _isInputKey = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Gets /// a value indicating whether the SHIFT key was pressed. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Composition.cs
- ExtractorMetadata.cs
- UnaryNode.cs
- InvokePatternIdentifiers.cs
- CompilerCollection.cs
- Knowncolors.cs
- ProxyWebPart.cs
- SByteConverter.cs
- SiteMembershipCondition.cs
- DockPanel.cs
- DataGridViewColumnCollection.cs
- FileIOPermission.cs
- Soap12ServerProtocol.cs
- Transform3D.cs
- VirtualizedItemProviderWrapper.cs
- WorkItem.cs
- RegionData.cs
- SymbolDocumentInfo.cs
- formatter.cs
- BidirectionalDictionary.cs
- DataControlFieldHeaderCell.cs
- XmlFormatExtensionPointAttribute.cs
- SecurityPolicySection.cs
- Policy.cs
- XPathAncestorQuery.cs
- Calendar.cs
- ExtentJoinTreeNode.cs
- GeneralTransform2DTo3DTo2D.cs
- TypeDelegator.cs
- OdbcErrorCollection.cs
- VisualBrush.cs
- WebResponse.cs
- WaitForChangedResult.cs
- Style.cs
- XmlSchemaSimpleTypeUnion.cs
- FrameworkContextData.cs
- HwndAppCommandInputProvider.cs
- RepeatButton.cs
- SerializationException.cs
- SQLSingle.cs
- ScopeCollection.cs
- updatecommandorderer.cs
- HGlobalSafeHandle.cs
- ActivityCodeDomSerializationManager.cs
- MessageHeaderAttribute.cs
- FormsAuthenticationTicket.cs
- SubstitutionDesigner.cs
- ThemeInfoAttribute.cs
- DesignerRegion.cs
- ErrorFormatter.cs
- PerspectiveCamera.cs
- DynamicActionMessageFilter.cs
- CfgParser.cs
- TraceLevelStore.cs
- XmlnsDefinitionAttribute.cs
- Variable.cs
- GatewayDefinition.cs
- CodePropertyReferenceExpression.cs
- Configuration.cs
- AttributeCollection.cs
- EdmError.cs
- IDQuery.cs
- CrossContextChannel.cs
- ImageDrawing.cs
- KoreanCalendar.cs
- EventLogPermissionAttribute.cs
- HotSpot.cs
- DesignSurfaceEvent.cs
- MetricEntry.cs
- GridViewRowPresenter.cs
- UpdateExpressionVisitor.cs
- Font.cs
- Invariant.cs
- Vector3DKeyFrameCollection.cs
- PropertyGeneratedEventArgs.cs
- ServiceNameElementCollection.cs
- BaseConfigurationRecord.cs
- Form.cs
- QilBinary.cs
- CompilerCollection.cs
- AxParameterData.cs
- QueryContinueDragEvent.cs
- MessageQueuePermissionEntryCollection.cs
- QilName.cs
- TextCompositionManager.cs
- ListBox.cs
- RunClient.cs
- MenuCommandsChangedEventArgs.cs
- HttpCacheVary.cs
- Itemizer.cs
- RTTrackingProfile.cs
- DataViewSetting.cs
- ManagementDateTime.cs
- TextParagraphCache.cs
- SafeHandles.cs
- RunInstallerAttribute.cs
- CryptoStream.cs
- NumberFormatInfo.cs
- AnnotationAuthorChangedEventArgs.cs
- ToolStripSeparatorRenderEventArgs.cs