Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CommonUI / System / Drawing / Printing / TriState.cs / 1305376 / TriState.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Printing { using System.ComponentModel; using System.Diagnostics; using System; [Serializable] internal struct TriState { private byte value; // 0 is "default", not false public static readonly TriState Default = new TriState(0); public static readonly TriState False = new TriState(1); public static readonly TriState True = new TriState(2); private TriState(byte value) { this.value = value; } public bool IsDefault { get { return this == Default;} } public bool IsFalse { get { return this == False;} } public bool IsNotDefault { get { return this != Default;} } public bool IsTrue { get { return this == True;} } public static bool operator ==(TriState left, TriState right) { return left.value == right.value; } public static bool operator !=(TriState left, TriState right) { return !(left == right); } public override bool Equals( object o ) { TriState state = (TriState)o; return this.value == state.value; } public override int GetHashCode() { return value; } public static implicit operator TriState(bool value) { return(value) ? True : False; } public static explicit operator bool(TriState value) { if (value.IsDefault) throw new InvalidCastException(SR.GetString(SR.TriStateCompareError)); else return(value == TriState.True); } ////// /// /// public override string ToString() { if (this == Default) return "Default"; else if (this == False) return "False"; else return "True"; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Provides some interesting information about the TriState in /// String form. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Printing { using System.ComponentModel; using System.Diagnostics; using System; [Serializable] internal struct TriState { private byte value; // 0 is "default", not false public static readonly TriState Default = new TriState(0); public static readonly TriState False = new TriState(1); public static readonly TriState True = new TriState(2); private TriState(byte value) { this.value = value; } public bool IsDefault { get { return this == Default;} } public bool IsFalse { get { return this == False;} } public bool IsNotDefault { get { return this != Default;} } public bool IsTrue { get { return this == True;} } public static bool operator ==(TriState left, TriState right) { return left.value == right.value; } public static bool operator !=(TriState left, TriState right) { return !(left == right); } public override bool Equals( object o ) { TriState state = (TriState)o; return this.value == state.value; } public override int GetHashCode() { return value; } public static implicit operator TriState(bool value) { return(value) ? True : False; } public static explicit operator bool(TriState value) { if (value.IsDefault) throw new InvalidCastException(SR.GetString(SR.TriStateCompareError)); else return(value == TriState.True); } ////// /// /// public override string ToString() { if (this == Default) return "Default"; else if (this == False) return "False"; else return "True"; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Provides some interesting information about the TriState in /// String form. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ImageUrlEditor.cs
- WebPartConnectionsEventArgs.cs
- ContentType.cs
- FormViewModeEventArgs.cs
- FixedTextSelectionProcessor.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- WriterOutput.cs
- QueryStringParameter.cs
- TypeValidationEventArgs.cs
- AsyncParams.cs
- SpecialNameAttribute.cs
- DataGridRow.cs
- SettingsAttributeDictionary.cs
- XmlBinaryReader.cs
- PerfCounters.cs
- DataTableMapping.cs
- AdCreatedEventArgs.cs
- Rect.cs
- DataControlHelper.cs
- UriTemplate.cs
- FormsAuthenticationUser.cs
- ImageFormat.cs
- AuthenticateEventArgs.cs
- BaseTypeViewSchema.cs
- Internal.cs
- MouseButtonEventArgs.cs
- XmlSchemaObjectCollection.cs
- RowTypeElement.cs
- CommandHelper.cs
- _LocalDataStore.cs
- Roles.cs
- InfoCardSymmetricCrypto.cs
- ExtensionSimplifierMarkupObject.cs
- UIntPtr.cs
- MulticastNotSupportedException.cs
- AssociatedControlConverter.cs
- WmiInstallComponent.cs
- codemethodreferenceexpression.cs
- HuffCodec.cs
- BmpBitmapEncoder.cs
- ExtentKey.cs
- SelectionEditingBehavior.cs
- SplashScreen.cs
- MenuAdapter.cs
- TraceHandlerErrorFormatter.cs
- StructuredTypeEmitter.cs
- DesignerTransactionCloseEvent.cs
- TextTreeRootTextBlock.cs
- EditorPart.cs
- FieldToken.cs
- QuadraticBezierSegment.cs
- ServiceReference.cs
- EditorZone.cs
- XamlParser.cs
- TranslateTransform3D.cs
- ScriptIgnoreAttribute.cs
- Attributes.cs
- SchemaConstraints.cs
- ScalarOps.cs
- ChainedAsyncResult.cs
- HierarchicalDataSourceControl.cs
- ModifierKeysValueSerializer.cs
- QuaternionAnimation.cs
- AnnotationHelper.cs
- dataSvcMapFileLoader.cs
- ErrorCodes.cs
- LastQueryOperator.cs
- CapabilitiesUse.cs
- EventlogProvider.cs
- QueryCursorEventArgs.cs
- ActivityCodeDomSerializer.cs
- HostedHttpContext.cs
- StorageConditionPropertyMapping.cs
- IPGlobalProperties.cs
- NavigationEventArgs.cs
- UnitySerializationHolder.cs
- DigitalSignatureProvider.cs
- TcpChannelHelper.cs
- GridEntryCollection.cs
- HttpCacheVary.cs
- FullTextState.cs
- SqlBinder.cs
- CodeTypeParameterCollection.cs
- StateRuntime.cs
- DataTableReader.cs
- PropertyManager.cs
- Graphics.cs
- ParallelRangeManager.cs
- SqlNodeAnnotations.cs
- XmlTextReader.cs
- GridViewRowPresenter.cs
- CircleHotSpot.cs
- VariantWrapper.cs
- SiteMapNodeItem.cs
- MarkerProperties.cs
- SerializationTrace.cs
- dbdatarecord.cs
- XmlUTF8TextReader.cs
- SoapAttributes.cs
- RectKeyFrameCollection.cs