Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Configuration / System / Configuration / PropertyInformation.cs / 1 / PropertyInformation.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Configuration; using System.Collections.Specialized; using System.ComponentModel; using System.Collections; using System.Runtime.Serialization; namespace System.Configuration { // PropertyInformation // // Contains information about a property // public sealed class PropertyInformation { private ConfigurationElement ThisElement = null; private string PropertyName; private ConfigurationProperty _Prop = null; private const string LockAll = "*"; private ConfigurationProperty Prop { get { if (_Prop == null) { _Prop = ThisElement.Properties[PropertyName]; } return _Prop; } } internal PropertyInformation(ConfigurationElement thisElement, string propertyName) { PropertyName = propertyName; ThisElement = thisElement; } public string Name { get { return PropertyName; } } internal string ProvidedName { get { return Prop.ProvidedName; } } public object Value { get { return ThisElement[PropertyName]; } set { ThisElement[PropertyName] = value; } } // DefaultValue // // What is the default value for this property // public object DefaultValue { get { return Prop.DefaultValue; } } // ValueOrigin // // Where was the property retrieved from // public PropertyValueOrigin ValueOrigin { get { if (ThisElement.Values[PropertyName] == null) { return PropertyValueOrigin.Default; } if (ThisElement.Values.IsInherited(PropertyName)) { return PropertyValueOrigin.Inherited; } return PropertyValueOrigin.SetHere; } } // IsModified // // Was the property Modified // public bool IsModified { get { if (ThisElement.Values[PropertyName] == null) { return false; } if (ThisElement.Values.IsModified(PropertyName)) { return true; } return false; } } // IsKey // // Is this property a key? // public bool IsKey { get { return Prop.IsKey; } } // IsRequired // // Is this property required? // public bool IsRequired { get { return Prop.IsRequired; } } // IsLocked // // Is this property locked? // public bool IsLocked { get { return ((ThisElement.LockedAllExceptAttributesList != null && !ThisElement.LockedAllExceptAttributesList.DefinedInParent(PropertyName)) || (ThisElement.LockedAttributesList != null && (ThisElement.LockedAttributesList.DefinedInParent(PropertyName) || ThisElement.LockedAttributesList.DefinedInParent(LockAll))) || (((ThisElement.ItemLocked & ConfigurationValueFlags.Locked) != 0) && ((ThisElement.ItemLocked & ConfigurationValueFlags.Inherited) != 0))); } } // Source // // What is the source file where this data came from // public string Source { get { PropertySourceInfo psi = ThisElement.Values.GetSourceInfo(PropertyName); if (psi == null) { psi = ThisElement.Values.GetSourceInfo(String.Empty); } if (psi == null) { return String.Empty; } return psi.FileName; } } // LineNumber // // What is the line number associated with the source // // Note: // 1 is the first line in the file. 0 is returned when there is no // source // public int LineNumber { get { PropertySourceInfo psi = ThisElement.Values.GetSourceInfo(PropertyName); if (psi == null) { psi = ThisElement.Values.GetSourceInfo(String.Empty); } if (psi == null) { return 0; } return psi.LineNumber; } } // Type // // What is the type for the property // public Type Type { get { return Prop.Type; } } // Validator // public ConfigurationValidatorBase Validator { get { return Prop.Validator; } } // Converter // public TypeConverter Converter { get { return Prop.Converter; } } // Property description ( comments etc ) public string Description { get { return Prop.Description; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Configuration; using System.Collections.Specialized; using System.ComponentModel; using System.Collections; using System.Runtime.Serialization; namespace System.Configuration { // PropertyInformation // // Contains information about a property // public sealed class PropertyInformation { private ConfigurationElement ThisElement = null; private string PropertyName; private ConfigurationProperty _Prop = null; private const string LockAll = "*"; private ConfigurationProperty Prop { get { if (_Prop == null) { _Prop = ThisElement.Properties[PropertyName]; } return _Prop; } } internal PropertyInformation(ConfigurationElement thisElement, string propertyName) { PropertyName = propertyName; ThisElement = thisElement; } public string Name { get { return PropertyName; } } internal string ProvidedName { get { return Prop.ProvidedName; } } public object Value { get { return ThisElement[PropertyName]; } set { ThisElement[PropertyName] = value; } } // DefaultValue // // What is the default value for this property // public object DefaultValue { get { return Prop.DefaultValue; } } // ValueOrigin // // Where was the property retrieved from // public PropertyValueOrigin ValueOrigin { get { if (ThisElement.Values[PropertyName] == null) { return PropertyValueOrigin.Default; } if (ThisElement.Values.IsInherited(PropertyName)) { return PropertyValueOrigin.Inherited; } return PropertyValueOrigin.SetHere; } } // IsModified // // Was the property Modified // public bool IsModified { get { if (ThisElement.Values[PropertyName] == null) { return false; } if (ThisElement.Values.IsModified(PropertyName)) { return true; } return false; } } // IsKey // // Is this property a key? // public bool IsKey { get { return Prop.IsKey; } } // IsRequired // // Is this property required? // public bool IsRequired { get { return Prop.IsRequired; } } // IsLocked // // Is this property locked? // public bool IsLocked { get { return ((ThisElement.LockedAllExceptAttributesList != null && !ThisElement.LockedAllExceptAttributesList.DefinedInParent(PropertyName)) || (ThisElement.LockedAttributesList != null && (ThisElement.LockedAttributesList.DefinedInParent(PropertyName) || ThisElement.LockedAttributesList.DefinedInParent(LockAll))) || (((ThisElement.ItemLocked & ConfigurationValueFlags.Locked) != 0) && ((ThisElement.ItemLocked & ConfigurationValueFlags.Inherited) != 0))); } } // Source // // What is the source file where this data came from // public string Source { get { PropertySourceInfo psi = ThisElement.Values.GetSourceInfo(PropertyName); if (psi == null) { psi = ThisElement.Values.GetSourceInfo(String.Empty); } if (psi == null) { return String.Empty; } return psi.FileName; } } // LineNumber // // What is the line number associated with the source // // Note: // 1 is the first line in the file. 0 is returned when there is no // source // public int LineNumber { get { PropertySourceInfo psi = ThisElement.Values.GetSourceInfo(PropertyName); if (psi == null) { psi = ThisElement.Values.GetSourceInfo(String.Empty); } if (psi == null) { return 0; } return psi.LineNumber; } } // Type // // What is the type for the property // public Type Type { get { return Prop.Type; } } // Validator // public ConfigurationValidatorBase Validator { get { return Prop.Validator; } } // Converter // public TypeConverter Converter { get { return Prop.Converter; } } // Property description ( comments etc ) public string Description { get { return Prop.Description; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- X509Extension.cs
- TabOrder.cs
- TransformCollection.cs
- XsltException.cs
- LinkGrep.cs
- ErrorProvider.cs
- _TransmitFileOverlappedAsyncResult.cs
- util.cs
- ListDictionaryInternal.cs
- AdapterDictionary.cs
- MaskedTextBoxDesigner.cs
- HashHelper.cs
- NetDataContractSerializer.cs
- PolicyException.cs
- SerializationBinder.cs
- DocumentViewerAutomationPeer.cs
- DesignSurfaceServiceContainer.cs
- BoundPropertyEntry.cs
- SqlLiftIndependentRowExpressions.cs
- DbConnectionInternal.cs
- TextPatternIdentifiers.cs
- FontStyleConverter.cs
- LinqDataSourceDisposeEventArgs.cs
- X509PeerCertificateAuthenticationElement.cs
- DeclarativeConditionsCollection.cs
- ResourcesBuildProvider.cs
- EastAsianLunisolarCalendar.cs
- WithStatement.cs
- UserThread.cs
- AutomationElementIdentifiers.cs
- SqlCacheDependencyDatabaseCollection.cs
- SmtpClient.cs
- RegionIterator.cs
- TextDocumentView.cs
- ObjectKeyFrameCollection.cs
- RawUIStateInputReport.cs
- XmlSchemaInfo.cs
- FactoryId.cs
- ApplicationInfo.cs
- COM2TypeInfoProcessor.cs
- OdbcEnvironment.cs
- ReadOnlyDictionary.cs
- ScriptBehaviorDescriptor.cs
- TimeSpanStorage.cs
- EventMetadata.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- TemplateBindingExtensionConverter.cs
- _WebProxyDataBuilder.cs
- ClrProviderManifest.cs
- WebRequest.cs
- XmlReflectionMember.cs
- StreamGeometry.cs
- ButtonStandardAdapter.cs
- RangeBaseAutomationPeer.cs
- SqlDataReaderSmi.cs
- TypefaceMap.cs
- RawStylusInputReport.cs
- EntityDataSourceWizardForm.cs
- StateChangeEvent.cs
- HScrollProperties.cs
- SqlClientMetaDataCollectionNames.cs
- AssemblyAssociatedContentFileAttribute.cs
- ParameterToken.cs
- GeneratedContractType.cs
- ObjectDataSourceEventArgs.cs
- PropertyGridCommands.cs
- ContractUtils.cs
- TextTreeInsertElementUndoUnit.cs
- Executor.cs
- ReflectPropertyDescriptor.cs
- autovalidator.cs
- ModifierKeysValueSerializer.cs
- VBIdentifierNameEditor.cs
- IItemContainerGenerator.cs
- AddIn.cs
- CrossAppDomainChannel.cs
- SqlProviderServices.cs
- UnmanagedHandle.cs
- TripleDESCryptoServiceProvider.cs
- MultiDataTrigger.cs
- XmlComplianceUtil.cs
- ProfileManager.cs
- WorkerRequest.cs
- ControlParameter.cs
- MexHttpBindingCollectionElement.cs
- Tablet.cs
- MethodBody.cs
- UnsupportedPolicyOptionsException.cs
- OdbcEnvironmentHandle.cs
- SchemaManager.cs
- RSACryptoServiceProvider.cs
- _PooledStream.cs
- TrustLevelCollection.cs
- MenuItem.cs
- ElementHost.cs
- RenameRuleObjectDialog.Designer.cs
- ExpressionList.cs
- ExternalCalls.cs
- Image.cs
- ServiceObjectContainer.cs