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
- WebResourceAttribute.cs
- RegisteredExpandoAttribute.cs
- LineBreakRecord.cs
- X509RawDataKeyIdentifierClause.cs
- DirectoryObjectSecurity.cs
- BasicCommandTreeVisitor.cs
- GetReadStreamResult.cs
- UIElement3DAutomationPeer.cs
- TimeoutValidationAttribute.cs
- XmlResolver.cs
- FloaterBaseParagraph.cs
- SettingsPropertyIsReadOnlyException.cs
- DbConnectionStringCommon.cs
- DefinitionBase.cs
- WinEventHandler.cs
- SafeNativeMethodsCLR.cs
- XmlSchemaInfo.cs
- AmbientLight.cs
- EncoderNLS.cs
- MessageHeaderAttribute.cs
- EventlogProvider.cs
- CollectionBase.cs
- PanelDesigner.cs
- NullableFloatMinMaxAggregationOperator.cs
- CurrencyManager.cs
- Inline.cs
- Speller.cs
- ProfileManager.cs
- RtType.cs
- Filter.cs
- RootBrowserWindow.cs
- MessageEnumerator.cs
- UpdatePanelTriggerCollection.cs
- ValueType.cs
- UnSafeCharBuffer.cs
- TransactionBridgeSection.cs
- SQLBinaryStorage.cs
- OleDbDataAdapter.cs
- FilterElement.cs
- RootNamespaceAttribute.cs
- MethodBuilder.cs
- TreeNodeBinding.cs
- ContextStack.cs
- SafeSecurityHandles.cs
- TextChangedEventArgs.cs
- PointCollectionValueSerializer.cs
- FontConverter.cs
- CommandBinding.cs
- RetrieveVirtualItemEventArgs.cs
- UrlUtility.cs
- SelectorAutomationPeer.cs
- TextViewSelectionProcessor.cs
- ObjectNavigationPropertyMapping.cs
- AssemblyResourceLoader.cs
- EventListener.cs
- ContentValidator.cs
- ConnectionStringsExpressionBuilder.cs
- TakeQueryOptionExpression.cs
- CodeDefaultValueExpression.cs
- CqlErrorHelper.cs
- DataAccessor.cs
- XmlDocumentFieldSchema.cs
- ipaddressinformationcollection.cs
- XslCompiledTransform.cs
- DoubleConverter.cs
- ReadOnlyNameValueCollection.cs
- RenderData.cs
- ToolStripDropDownButton.cs
- ClientUtils.cs
- ZipIOExtraField.cs
- StringWriter.cs
- ColumnResizeAdorner.cs
- SqlBooleanizer.cs
- OutgoingWebRequestContext.cs
- SerialErrors.cs
- StringUtil.cs
- CodeDirectoryCompiler.cs
- ListDictionaryInternal.cs
- WebSysDisplayNameAttribute.cs
- HttpCacheVary.cs
- TypeElement.cs
- NativeActivityAbortContext.cs
- CachingHintValidation.cs
- CompositeFontFamily.cs
- Matrix.cs
- SessionPageStatePersister.cs
- SetIterators.cs
- DecimalKeyFrameCollection.cs
- AlternateView.cs
- GrammarBuilderPhrase.cs
- CharacterMetricsDictionary.cs
- SplitterEvent.cs
- EnumerableRowCollection.cs
- ToolStripContentPanel.cs
- SymLanguageVendor.cs
- MetadataSerializer.cs
- Rijndael.cs
- ColumnHeaderConverter.cs
- IQueryable.cs
- FrameworkContentElement.cs