Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- HttpApplicationFactory.cs
- SafeRegistryHandle.cs
- TargetConverter.cs
- CompositeCollection.cs
- ToolStripItemEventArgs.cs
- OletxResourceManager.cs
- PointLight.cs
- SplitterCancelEvent.cs
- Merger.cs
- ConfigDefinitionUpdates.cs
- RangeContentEnumerator.cs
- XmlSchemaComplexType.cs
- BinaryObjectWriter.cs
- Int32CollectionValueSerializer.cs
- CustomErrorsSection.cs
- ObjectQueryExecutionPlan.cs
- PauseStoryboard.cs
- WhitespaceRuleLookup.cs
- BamlWriter.cs
- ParallelQuery.cs
- PeerNameRecordCollection.cs
- CanExecuteRoutedEventArgs.cs
- DataRowComparer.cs
- CodeSubDirectoriesCollection.cs
- CommandHelpers.cs
- MembershipSection.cs
- CellPartitioner.cs
- XpsS0ValidatingLoader.cs
- AmbientLight.cs
- ExpressionBinding.cs
- DocumentPageHost.cs
- WebPartsPersonalization.cs
- TripleDES.cs
- DSACryptoServiceProvider.cs
- BamlBinaryReader.cs
- VersionedStreamOwner.cs
- LinearGradientBrush.cs
- WebPartConnectionsConfigureVerb.cs
- IntSecurity.cs
- MemberNameValidator.cs
- MasterPageBuildProvider.cs
- CacheOutputQuery.cs
- FileDataSourceCache.cs
- DbResourceAllocator.cs
- DeviceSpecificDialogCachedState.cs
- cache.cs
- HtmlElementErrorEventArgs.cs
- UnregisterInfo.cs
- SplineKeyFrames.cs
- RemoteWebConfigurationHostServer.cs
- UTF7Encoding.cs
- HandlerBase.cs
- OperatingSystem.cs
- AddInAttribute.cs
- CultureInfoConverter.cs
- DataGridPageChangedEventArgs.cs
- SQLInt64.cs
- _SslStream.cs
- ProfileServiceManager.cs
- ResourceDisplayNameAttribute.cs
- ProtocolViolationException.cs
- ResourcesBuildProvider.cs
- LocalizationParserHooks.cs
- AssociationSetMetadata.cs
- ResolveCriteriaCD1.cs
- IntPtr.cs
- WpfKnownMember.cs
- ProxyManager.cs
- OdbcRowUpdatingEvent.cs
- SafeEventLogReadHandle.cs
- StatusBar.cs
- ParameterCollection.cs
- Semaphore.cs
- MemberRelationshipService.cs
- ZipIOCentralDirectoryBlock.cs
- LineServices.cs
- BindingContext.cs
- ConditionBrowserDialog.cs
- HtmlAnchor.cs
- TextCompositionEventArgs.cs
- DataGridRowHeaderAutomationPeer.cs
- Single.cs
- ThreadStartException.cs
- BindValidator.cs
- CornerRadius.cs
- ExpressionBindingsDialog.cs
- XmlDataSource.cs
- BitmapDecoder.cs
- RowType.cs
- TextServicesProperty.cs
- CompilerErrorCollection.cs
- TextChange.cs
- WhitespaceRule.cs
- GacUtil.cs
- RenderData.cs
- Wildcard.cs
- ExpressionBuilderContext.cs
- AdapterSwitches.cs
- ObjectDataSourceEventArgs.cs
- Vector3DAnimation.cs