Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CommonUI / System / Drawing / Printing / TriState.cs / 1 / 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. // Copyright (c) Microsoft Corporation. All rights reserved./// 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
- WebPartConnectionCollection.cs
- DetailsViewPagerRow.cs
- XmlLanguageConverter.cs
- Registry.cs
- SaveFileDialog.cs
- ExecutedRoutedEventArgs.cs
- MediaEntryAttribute.cs
- ClientConfigurationHost.cs
- VisualBasicSettings.cs
- FileDialog.cs
- FontDifferentiator.cs
- ReadOnlyNameValueCollection.cs
- Pen.cs
- WebPartMenu.cs
- CharUnicodeInfo.cs
- UniformGrid.cs
- ResourceDictionaryCollection.cs
- AdornerPresentationContext.cs
- CryptoKeySecurity.cs
- DPCustomTypeDescriptor.cs
- SoapProtocolReflector.cs
- BitmapEffectDrawing.cs
- GridViewPageEventArgs.cs
- ReferenceSchema.cs
- ResolveNameEventArgs.cs
- Marshal.cs
- DBSqlParserTable.cs
- storagemappingitemcollection.viewdictionary.cs
- WebPartCollection.cs
- BitmapEffectGeneralTransform.cs
- Misc.cs
- FunctionCommandText.cs
- FloatSumAggregationOperator.cs
- KeyManager.cs
- ProcessModuleCollection.cs
- VectorConverter.cs
- DesigntimeLicenseContextSerializer.cs
- Rotation3DAnimation.cs
- AutoGeneratedFieldProperties.cs
- ItemsPanelTemplate.cs
- BufferedGraphics.cs
- OleDbTransaction.cs
- DynamicMethod.cs
- ObjectNavigationPropertyMapping.cs
- BufferedOutputStream.cs
- BitFlagsGenerator.cs
- CommonDialog.cs
- SelectionChangedEventArgs.cs
- SessionStateUtil.cs
- TransportSecurityProtocol.cs
- Int32Rect.cs
- XmlJsonWriter.cs
- ServiceDeploymentInfo.cs
- GridViewCommandEventArgs.cs
- XamlTreeBuilderBamlRecordWriter.cs
- ConnectionManagementElement.cs
- EntitySetRetriever.cs
- QueryCacheManager.cs
- SettingsProperty.cs
- DbConnectionInternal.cs
- EdmComplexPropertyAttribute.cs
- LineMetrics.cs
- GroupBox.cs
- ItemsPanelTemplate.cs
- HtmlMobileTextWriter.cs
- CodeNamespaceImportCollection.cs
- ConfigurationLocation.cs
- ObjectDataSourceWizardForm.cs
- ArrangedElement.cs
- Normalizer.cs
- DataGridViewColumnTypeEditor.cs
- FontEmbeddingManager.cs
- PartManifestEntry.cs
- ReadOnlyCollectionBuilder.cs
- TemplateManager.cs
- WebServiceMethodData.cs
- DateTimeParse.cs
- DefaultValueTypeConverter.cs
- CaseInsensitiveHashCodeProvider.cs
- XmlReaderSettings.cs
- SQLBytesStorage.cs
- CodeDomComponentSerializationService.cs
- SetStateEventArgs.cs
- PerformanceCounterPermissionEntry.cs
- QilBinary.cs
- CodeNamespaceImportCollection.cs
- SequenceDesigner.cs
- ChangeTracker.cs
- LinqDataSourceSelectEventArgs.cs
- SettingsAttributes.cs
- SQLResource.cs
- TraceSource.cs
- AssertUtility.cs
- X500Name.cs
- XmlSchemaSimpleContent.cs
- SupportingTokenSpecification.cs
- QilXmlReader.cs
- RangeExpression.cs
- BaseProcessor.cs
- SettingsPropertyIsReadOnlyException.cs