Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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(); } } }/// 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
- DrawingGroupDrawingContext.cs
- Int64Storage.cs
- ImportOptions.cs
- CodeDomSerializationProvider.cs
- ReflectionHelper.cs
- EndpointAddressMessageFilter.cs
- DesignerTransaction.cs
- SortedDictionary.cs
- DispatchOperationRuntime.cs
- CollectionBuilder.cs
- DmlSqlGenerator.cs
- WindowsPen.cs
- SQLInt32.cs
- MethodCallConverter.cs
- SqlRowUpdatedEvent.cs
- SizeAnimationClockResource.cs
- SrgsElementFactory.cs
- HorizontalAlignConverter.cs
- SHA1.cs
- TraceProvider.cs
- WebPartTransformer.cs
- Convert.cs
- SiteMap.cs
- CategoryValueConverter.cs
- ProbeRequestResponseAsyncResult.cs
- BindableTemplateBuilder.cs
- WebPartDisplayModeEventArgs.cs
- XmlProcessingInstruction.cs
- CompositeKey.cs
- ActivityCodeGenerator.cs
- CompiledQueryCacheKey.cs
- XmlArrayAttribute.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- GeneralTransform3DGroup.cs
- SimpleType.cs
- SqlInfoMessageEvent.cs
- WriteableBitmap.cs
- TypeExtensions.cs
- PreProcessor.cs
- EntityCodeGenerator.cs
- XPathNode.cs
- ButtonChrome.cs
- CacheSection.cs
- TextServicesHost.cs
- TextDocumentView.cs
- PasswordRecoveryDesigner.cs
- ReadOnlyDataSource.cs
- Animatable.cs
- RectConverter.cs
- ArraySubsetEnumerator.cs
- ThreadSafeList.cs
- NetDataContractSerializer.cs
- PersistChildrenAttribute.cs
- WindowsUpDown.cs
- WebServiceParameterData.cs
- TypeForwardedFromAttribute.cs
- GridPattern.cs
- Clipboard.cs
- BinaryObjectWriter.cs
- GridProviderWrapper.cs
- AutomationPatternInfo.cs
- TreeViewItem.cs
- CodeExporter.cs
- StatusStrip.cs
- DiscreteKeyFrames.cs
- ResourceCodeDomSerializer.cs
- _RequestCacheProtocol.cs
- ActivityInterfaces.cs
- SmtpSection.cs
- JsonEnumDataContract.cs
- Opcode.cs
- MultiBindingExpression.cs
- WeakEventManager.cs
- WebPartZoneCollection.cs
- __Filters.cs
- Pkcs9Attribute.cs
- CodeDOMProvider.cs
- ProgressBar.cs
- MaterializeFromAtom.cs
- ResXResourceSet.cs
- GlobalProxySelection.cs
- TrustLevelCollection.cs
- StrongNameKeyPair.cs
- UserPrincipalNameElement.cs
- RelatedView.cs
- Listen.cs
- PassportAuthenticationEventArgs.cs
- Parser.cs
- ModuleElement.cs
- SkewTransform.cs
- SupportingTokenProviderSpecification.cs
- DelegatedStream.cs
- StringUtil.cs
- MSAANativeProvider.cs
- DataGridColumnsPage.cs
- XComponentModel.cs
- StandardToolWindows.cs
- BufferedMessageWriter.cs
- PerfProviderCollection.cs
- CryptoStream.cs