Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CompMod / System / ComponentModel / AmbientValueAttribute.cs / 1 / AmbientValueAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel { using System; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.Runtime.InteropServices; using System.Runtime.Serialization.Formatters; using System.Security.Permissions; ////// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")] [AttributeUsage(AttributeTargets.All)] public sealed class AmbientValueAttribute : Attribute { private readonly object value; ///Specifies the ambient value for a property. The ambient value is the value you /// can set into a property to make it inherit its ambient. ////// public AmbientValueAttribute(Type type, string value) { // The try/catch here is because attributes should never throw exceptions. We would fail to // load an otherwise normal class. try { this.value = TypeDescriptor.GetConverter(type).ConvertFromInvariantString(value); } catch { Debug.Fail("Ambient value attribute of type " + type.FullName + " threw converting from the string '" + value + "'."); } } ///Initializes a new instance of the ///class, converting the /// specified value to the /// specified type, and using the U.S. English culture as the /// translation /// context. /// public AmbientValueAttribute(char value) { this.value = value; } ///Initializes a new instance of the ///class using a Unicode /// character. /// public AmbientValueAttribute(byte value) { this.value = value; } ///Initializes a new instance of the ///class using an 8-bit unsigned /// integer. /// public AmbientValueAttribute(short value) { this.value = value; } ///Initializes a new instance of the ///class using a 16-bit signed /// integer. /// public AmbientValueAttribute(int value) { this.value = value; } ///Initializes a new instance of the ///class using a 32-bit signed /// integer. /// public AmbientValueAttribute(long value) { this.value = value; } ///Initializes a new instance of the ///class using a 64-bit signed /// integer. /// public AmbientValueAttribute(float value) { this.value = value; } ///Initializes a new instance of the ///class using a /// single-precision floating point /// number. /// public AmbientValueAttribute(double value) { this.value = value; } ///Initializes a new instance of the ///class using a /// double-precision floating point /// number. /// public AmbientValueAttribute(bool value) { this.value = value; } ///Initializes a new instance of the ///class using a /// value. /// public AmbientValueAttribute(string value) { this.value = value; } ///Initializes a new instance of the ///class using a . /// public AmbientValueAttribute(object value) { this.value = value; } ///Initializes a new instance of the ////// class. /// public object Value { get { return value; } } public override bool Equals(object obj) { if (obj == this) { return true; } AmbientValueAttribute other = obj as AmbientValueAttribute; if (other != null) { if (value != null) { return value.Equals(other.Value); } else { return (other.Value == null); } } return false; } public override int GetHashCode() { return base.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Gets the ambient value of the property this /// attribute is /// bound to. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel { using System; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.Runtime.InteropServices; using System.Runtime.Serialization.Formatters; using System.Security.Permissions; ////// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")] [AttributeUsage(AttributeTargets.All)] public sealed class AmbientValueAttribute : Attribute { private readonly object value; ///Specifies the ambient value for a property. The ambient value is the value you /// can set into a property to make it inherit its ambient. ////// public AmbientValueAttribute(Type type, string value) { // The try/catch here is because attributes should never throw exceptions. We would fail to // load an otherwise normal class. try { this.value = TypeDescriptor.GetConverter(type).ConvertFromInvariantString(value); } catch { Debug.Fail("Ambient value attribute of type " + type.FullName + " threw converting from the string '" + value + "'."); } } ///Initializes a new instance of the ///class, converting the /// specified value to the /// specified type, and using the U.S. English culture as the /// translation /// context. /// public AmbientValueAttribute(char value) { this.value = value; } ///Initializes a new instance of the ///class using a Unicode /// character. /// public AmbientValueAttribute(byte value) { this.value = value; } ///Initializes a new instance of the ///class using an 8-bit unsigned /// integer. /// public AmbientValueAttribute(short value) { this.value = value; } ///Initializes a new instance of the ///class using a 16-bit signed /// integer. /// public AmbientValueAttribute(int value) { this.value = value; } ///Initializes a new instance of the ///class using a 32-bit signed /// integer. /// public AmbientValueAttribute(long value) { this.value = value; } ///Initializes a new instance of the ///class using a 64-bit signed /// integer. /// public AmbientValueAttribute(float value) { this.value = value; } ///Initializes a new instance of the ///class using a /// single-precision floating point /// number. /// public AmbientValueAttribute(double value) { this.value = value; } ///Initializes a new instance of the ///class using a /// double-precision floating point /// number. /// public AmbientValueAttribute(bool value) { this.value = value; } ///Initializes a new instance of the ///class using a /// value. /// public AmbientValueAttribute(string value) { this.value = value; } ///Initializes a new instance of the ///class using a . /// public AmbientValueAttribute(object value) { this.value = value; } ///Initializes a new instance of the ////// class. /// public object Value { get { return value; } } public override bool Equals(object obj) { if (obj == this) { return true; } AmbientValueAttribute other = obj as AmbientValueAttribute; if (other != null) { if (value != null) { return value.Equals(other.Value); } else { return (other.Value == null); } } return false; } public override int GetHashCode() { return base.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Gets the ambient value of the property this /// attribute is /// bound to. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- IsolatedStorageFilePermission.cs
- SqlBinder.cs
- CodeSubDirectoriesCollection.cs
- ScrollPatternIdentifiers.cs
- OutputCacheModule.cs
- SyntaxCheck.cs
- Rect3DValueSerializer.cs
- RealizationDrawingContextWalker.cs
- PrivilegedConfigurationManager.cs
- BuildProvider.cs
- xmlsaver.cs
- StatusStrip.cs
- AssemblyHelper.cs
- COMException.cs
- LinkDescriptor.cs
- XmlTextReaderImplHelpers.cs
- SerializationHelper.cs
- WindowsStatusBar.cs
- ConnectionPoint.cs
- CheckedListBox.cs
- ObjectSpanRewriter.cs
- SelectionWordBreaker.cs
- ContextMenuService.cs
- XmlSerializerFactory.cs
- ScriptingProfileServiceSection.cs
- OciEnlistContext.cs
- ScriptControl.cs
- CharacterBuffer.cs
- CheckBox.cs
- HttpApplication.cs
- SocketException.cs
- OleDbDataAdapter.cs
- RoleGroupCollection.cs
- NativeRecognizer.cs
- CodeAttributeDeclarationCollection.cs
- SettingsProperty.cs
- NetworkCredential.cs
- TimelineGroup.cs
- BoundingRectTracker.cs
- PersonalizationProviderHelper.cs
- EntityCommandExecutionException.cs
- Unit.cs
- SchemaSetCompiler.cs
- RuntimeResourceSet.cs
- MobileControlBuilder.cs
- MenuAutomationPeer.cs
- KnownTypesHelper.cs
- DocumentReference.cs
- OleDbInfoMessageEvent.cs
- TextRenderer.cs
- CatalogPartChrome.cs
- PointConverter.cs
- PropertyInfoSet.cs
- BinaryMessageEncoder.cs
- ThreadStaticAttribute.cs
- UrlEncodedParameterWriter.cs
- WebCategoryAttribute.cs
- ArrayList.cs
- ServerType.cs
- __ConsoleStream.cs
- HScrollBar.cs
- ProviderConnectionPointCollection.cs
- QueueException.cs
- ProjectionPruner.cs
- StopStoryboard.cs
- AsymmetricKeyExchangeDeformatter.cs
- RoutedEventHandlerInfo.cs
- GeometryDrawing.cs
- AbstractSvcMapFileLoader.cs
- HostedTransportConfigurationBase.cs
- ColumnPropertiesGroup.cs
- DataGridSortCommandEventArgs.cs
- TextSchema.cs
- NameNode.cs
- UntypedNullExpression.cs
- AspNetCompatibilityRequirementsMode.cs
- ErrorFormatterPage.cs
- GroupBox.cs
- RoleManagerModule.cs
- OracleParameterCollection.cs
- CroppedBitmap.cs
- SemanticAnalyzer.cs
- HtmlDocument.cs
- StaticSiteMapProvider.cs
- SourceFileInfo.cs
- TreeNodeBindingCollection.cs
- TableLayoutPanelCellPosition.cs
- BuildResultCache.cs
- XmlNotation.cs
- CollectionChangeEventArgs.cs
- CodeFieldReferenceExpression.cs
- SmiEventSink.cs
- SoapAttributeOverrides.cs
- DataKey.cs
- MessageSmuggler.cs
- ConstrainedDataObject.cs
- ParameterReplacerVisitor.cs
- ConstNode.cs
- Char.cs
- LoginDesigner.cs