Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- SymbolEqualComparer.cs
- DataGridViewTextBoxEditingControl.cs
- GACMembershipCondition.cs
- WindowProviderWrapper.cs
- RouteData.cs
- WizardDesigner.cs
- GridViewDeletedEventArgs.cs
- CapabilitiesSection.cs
- ActiveXHelper.cs
- EnumBuilder.cs
- CompareInfo.cs
- DataSourceSelectArguments.cs
- IdentifierService.cs
- OutKeywords.cs
- SqlMethodAttribute.cs
- ConnectionPoolRegistry.cs
- SHA384Cng.cs
- Crypto.cs
- MenuItemCollectionEditorDialog.cs
- MouseBinding.cs
- streamingZipPartStream.cs
- DesignerSerializationVisibilityAttribute.cs
- RewritingValidator.cs
- CheckBox.cs
- FunctionGenerator.cs
- OleDbRowUpdatedEvent.cs
- SqlDataSourceView.cs
- SequentialActivityDesigner.cs
- DefinitionUpdate.cs
- odbcmetadatacolumnnames.cs
- DbDataRecord.cs
- CodeArrayIndexerExpression.cs
- QuotedStringWriteStateInfo.cs
- RegexReplacement.cs
- CodeExpressionStatement.cs
- HtmlLink.cs
- DataGridViewColumnCollectionDialog.cs
- ExtentKey.cs
- ApplicationServicesHostFactory.cs
- VirtualDirectoryMapping.cs
- DocumentSequenceHighlightLayer.cs
- MemoryStream.cs
- MonikerSyntaxException.cs
- GcHandle.cs
- WebPartZoneCollection.cs
- EncoderParameter.cs
- DbSource.cs
- HWStack.cs
- StateMachineHelpers.cs
- SystemUnicastIPAddressInformation.cs
- CompositeKey.cs
- RepeatBehavior.cs
- CrossSiteScriptingValidation.cs
- UpdateCommand.cs
- LoadMessageLogger.cs
- MenuCommands.cs
- Timer.cs
- MergeFailedEvent.cs
- MessageQueueEnumerator.cs
- FormView.cs
- RequestQueue.cs
- Directory.cs
- QuinticEase.cs
- OLEDB_Util.cs
- SEHException.cs
- RtfToXamlReader.cs
- StorageEntityTypeMapping.cs
- Geometry3D.cs
- PEFileReader.cs
- TabControlEvent.cs
- Timer.cs
- basenumberconverter.cs
- OracleRowUpdatingEventArgs.cs
- ResourceReferenceExpression.cs
- ExceptionUtility.cs
- SqlClientPermission.cs
- BitConverter.cs
- InstanceNameConverter.cs
- CustomPopupPlacement.cs
- KeySpline.cs
- StatusBarPanel.cs
- FontStyleConverter.cs
- TextViewBase.cs
- IncrementalCompileAnalyzer.cs
- ScrollItemPattern.cs
- ConfigXmlElement.cs
- CorruptingExceptionCommon.cs
- RectangleHotSpot.cs
- FilterQuery.cs
- DataContractFormatAttribute.cs
- XmlILCommand.cs
- ProxyGenerator.cs
- AssemblySettingAttributes.cs
- ScriptReferenceBase.cs
- TypeEnumerableViewSchema.cs
- SqlAliasesReferenced.cs
- ByteStorage.cs
- ItemCheckedEvent.cs
- RelationshipConverter.cs
- AssociationEndMember.cs