Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / PropertyInformation.cs / 1305376 / 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
- AutomationProperties.cs
- Condition.cs
- HScrollBar.cs
- BamlCollectionHolder.cs
- HttpResponseInternalWrapper.cs
- CroppedBitmap.cs
- EdmScalarPropertyAttribute.cs
- TextParagraphProperties.cs
- DataGridViewRowCollection.cs
- SubpageParagraph.cs
- ConfigPathUtility.cs
- objectquery_tresulttype.cs
- MimeFormReflector.cs
- HashCodeCombiner.cs
- ListItemViewAttribute.cs
- AttributeQuery.cs
- CrossSiteScriptingValidation.cs
- SuspendDesigner.cs
- CodeGenerator.cs
- InkCanvasInnerCanvas.cs
- ReturnValue.cs
- RawMouseInputReport.cs
- Pipe.cs
- DocumentPageView.cs
- GlyphTypeface.cs
- CfgRule.cs
- HtmlTableCellCollection.cs
- ExecutionContext.cs
- IIS7WorkerRequest.cs
- DbMetaDataFactory.cs
- StylusCaptureWithinProperty.cs
- WebServicesDescriptionAttribute.cs
- XmlSchemaObject.cs
- FloaterParaClient.cs
- MasterPageBuildProvider.cs
- Brush.cs
- SqlInternalConnection.cs
- InvalidAsynchronousStateException.cs
- RuntimeConfigurationRecord.cs
- CodePageUtils.cs
- BitmapMetadataEnumerator.cs
- WorkflowViewStateService.cs
- datacache.cs
- EntityDataSourceDataSelectionPanel.cs
- PersonalizationStateInfoCollection.cs
- IdentityReference.cs
- Pointer.cs
- SimpleParser.cs
- CodeTypeOfExpression.cs
- DataListItemCollection.cs
- Currency.cs
- SendMailErrorEventArgs.cs
- EncodingStreamWrapper.cs
- HandlerBase.cs
- SafeWaitHandle.cs
- MetabaseServerConfig.cs
- Timeline.cs
- CodeAccessSecurityEngine.cs
- BatchParser.cs
- ScriptManager.cs
- TextParaClient.cs
- HijriCalendar.cs
- ProfileEventArgs.cs
- PointAnimationClockResource.cs
- Image.cs
- UrlPath.cs
- CollectionEditor.cs
- PassportAuthenticationEventArgs.cs
- Win32MouseDevice.cs
- SynchronizedDispatch.cs
- XmlSchemaCompilationSettings.cs
- AffineTransform3D.cs
- WebExceptionStatus.cs
- LogicalExpr.cs
- WebPart.cs
- CmsInterop.cs
- CompiledELinqQueryState.cs
- SplayTreeNode.cs
- FormViewPagerRow.cs
- FormClosedEvent.cs
- ListDictionaryInternal.cs
- BuildProviderUtils.cs
- Brush.cs
- ShutDownListener.cs
- Evaluator.cs
- ListParaClient.cs
- StandardOleMarshalObject.cs
- RadioButtonBaseAdapter.cs
- XDeferredAxisSource.cs
- WebPartAuthorizationEventArgs.cs
- Margins.cs
- SiteOfOriginPart.cs
- DiscoveryReference.cs
- ButtonBaseAutomationPeer.cs
- OleDbConnectionFactory.cs
- DataGridTablesFactory.cs
- RepeatBehavior.cs
- TargetFrameworkAttribute.cs
- GraphicsPathIterator.cs
- RenderTargetBitmap.cs