Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / System / ConsoleKeyInfo.cs / 1 / ConsoleKeyInfo.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: ConsoleKeyInfo ** ** ** Purpose: This value type represents a single key press, with modifier keys ** like Alt, Control, and Shift. ** ** =============================================================================*/ namespace System { [Serializable] public struct ConsoleKeyInfo { private char _keyChar; private ConsoleKey _key; private ConsoleModifiers _mods; public ConsoleKeyInfo(char keyChar, ConsoleKey key, bool shift, bool alt, bool control) { // Limit ConsoleKey values to 0 to 255, but don't if (((int)key) < 0 || ((int)key) > 255) throw new ArgumentOutOfRangeException("key", Environment.GetResourceString("ArgumentOutOfRange_ConsoleKey")); _keyChar = keyChar; _key = key; _mods = 0; if (shift) _mods |= ConsoleModifiers.Shift; if (alt) _mods |= ConsoleModifiers.Alt; if (control) _mods |= ConsoleModifiers.Control; } public char KeyChar { get { return _keyChar; } } public ConsoleKey Key { get { return _key; } } public ConsoleModifiers Modifiers { get { return _mods; } } public override bool Equals(Object value) { if (value is ConsoleKeyInfo) return Equals((ConsoleKeyInfo)value); else return false; } public bool Equals(ConsoleKeyInfo obj) { return obj._keyChar == _keyChar && obj._key == _key && obj._mods == _mods; } public static bool operator ==(ConsoleKeyInfo a, ConsoleKeyInfo b) { return a.Equals(b); } public static bool operator !=(ConsoleKeyInfo a, ConsoleKeyInfo b) { return !(a == b); } public override int GetHashCode() { return (int)_keyChar | (int) _mods; } } } // 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
- TheQuery.cs
- DbgUtil.cs
- UserControlParser.cs
- Binding.cs
- ScriptControlDescriptor.cs
- WorkflowDefinitionDispenser.cs
- ErrorHandler.cs
- NativeRecognizer.cs
- DataGridViewEditingControlShowingEventArgs.cs
- ThousandthOfEmRealPoints.cs
- UntypedNullExpression.cs
- WorkItem.cs
- SystemKeyConverter.cs
- DataTableReaderListener.cs
- WebPartConnectionsCancelEventArgs.cs
- RawUIStateInputReport.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- Table.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- GridViewRowPresenterBase.cs
- isolationinterop.cs
- LazyTextWriterCreator.cs
- LocalBuilder.cs
- ItemChangedEventArgs.cs
- AlphabetConverter.cs
- Error.cs
- KeyInstance.cs
- Vector3dCollection.cs
- FixedSOMLineCollection.cs
- LZCodec.cs
- LinearQuaternionKeyFrame.cs
- SystemGatewayIPAddressInformation.cs
- LayoutUtils.cs
- SerializableTypeCodeDomSerializer.cs
- TreeSet.cs
- LabelDesigner.cs
- MediaElement.cs
- DbException.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- LineSegment.cs
- DataColumnCollection.cs
- CircleHotSpot.cs
- DoubleLinkListEnumerator.cs
- ResourceReader.cs
- TcpStreams.cs
- DataBoundControlAdapter.cs
- NewExpression.cs
- DiagnosticTraceSchemas.cs
- FactoryId.cs
- FileUtil.cs
- WindowsButton.cs
- XD.cs
- AssemblyCache.cs
- WrapPanel.cs
- ExpressionDumper.cs
- HttpConfigurationContext.cs
- RuleSetDialog.Designer.cs
- WebRequestModuleElementCollection.cs
- TableLayoutStyle.cs
- QilPatternVisitor.cs
- SyntaxCheck.cs
- DragCompletedEventArgs.cs
- XmlSiteMapProvider.cs
- HtmlImage.cs
- GroupBoxAutomationPeer.cs
- DataListItemEventArgs.cs
- SecurityStateEncoder.cs
- EntityCommand.cs
- Soap.cs
- _DisconnectOverlappedAsyncResult.cs
- QilReplaceVisitor.cs
- ObjectParameterCollection.cs
- SynchronizationLockException.cs
- sortedlist.cs
- _CookieModule.cs
- ReadOnlyNameValueCollection.cs
- LogicalExpr.cs
- PeerNameRegistration.cs
- RepeatBehaviorConverter.cs
- CaseStatement.cs
- ReceiveActivity.cs
- GraphicsPathIterator.cs
- LessThanOrEqual.cs
- ConstructorNeedsTagAttribute.cs
- LogoValidationException.cs
- dtdvalidator.cs
- AnimatedTypeHelpers.cs
- TextBoxAutoCompleteSourceConverter.cs
- ValidationResult.cs
- SqlCacheDependency.cs
- StackBuilderSink.cs
- XmlComplianceUtil.cs
- XmlReader.cs
- BasicViewGenerator.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- ModelTreeManager.cs
- FamilyMapCollection.cs
- FilteredReadOnlyMetadataCollection.cs
- EventSinkHelperWriter.cs
- XmlSchemaNotation.cs