Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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;
///
/// 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.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")]
[AttributeUsage(AttributeTargets.All)]
public sealed class AmbientValueAttribute : Attribute {
private readonly object 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(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 using a Unicode
/// character.
///
public AmbientValueAttribute(char value) {
this.value = value;
}
///
/// Initializes a new instance of the class using an 8-bit unsigned
/// integer.
///
public AmbientValueAttribute(byte value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a 16-bit signed
/// integer.
///
public AmbientValueAttribute(short value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a 32-bit signed
/// integer.
///
public AmbientValueAttribute(int value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a 64-bit signed
/// integer.
///
public AmbientValueAttribute(long value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a
/// single-precision floating point
/// number.
///
public AmbientValueAttribute(float value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a
/// double-precision floating point
/// number.
///
public AmbientValueAttribute(double value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a
/// value.
///
public AmbientValueAttribute(bool value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a .
///
public AmbientValueAttribute(string value) {
this.value = value;
}
///
/// Initializes a new instance of the
/// class.
///
public AmbientValueAttribute(object value) {
this.value = value;
}
///
///
/// Gets the ambient value of the property this
/// attribute is
/// bound to.
///
///
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.
//------------------------------------------------------------------------------
//
// 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;
///
/// 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.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")]
[AttributeUsage(AttributeTargets.All)]
public sealed class AmbientValueAttribute : Attribute {
private readonly object 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(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 using a Unicode
/// character.
///
public AmbientValueAttribute(char value) {
this.value = value;
}
///
/// Initializes a new instance of the class using an 8-bit unsigned
/// integer.
///
public AmbientValueAttribute(byte value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a 16-bit signed
/// integer.
///
public AmbientValueAttribute(short value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a 32-bit signed
/// integer.
///
public AmbientValueAttribute(int value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a 64-bit signed
/// integer.
///
public AmbientValueAttribute(long value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a
/// single-precision floating point
/// number.
///
public AmbientValueAttribute(float value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a
/// double-precision floating point
/// number.
///
public AmbientValueAttribute(double value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a
/// value.
///
public AmbientValueAttribute(bool value) {
this.value = value;
}
///
/// Initializes a new instance of the class using a .
///
public AmbientValueAttribute(string value) {
this.value = value;
}
///
/// Initializes a new instance of the
/// class.
///
public AmbientValueAttribute(object value) {
this.value = value;
}
///
///
/// Gets the ambient value of the property this
/// attribute is
/// bound to.
///
///
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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlHierarchicalEnumerable.cs
- ColorTransform.cs
- AdornerDecorator.cs
- MultiTrigger.cs
- RenderDataDrawingContext.cs
- FamilyCollection.cs
- DataObjectFieldAttribute.cs
- FilePrompt.cs
- SqlProviderServices.cs
- XmlEntityReference.cs
- BooleanExpr.cs
- AbandonedMutexException.cs
- mediaeventshelper.cs
- StoreUtilities.cs
- TraceSection.cs
- CodeDirectiveCollection.cs
- mda.cs
- TypeExtensions.cs
- KerberosReceiverSecurityToken.cs
- ImageField.cs
- NavigationFailedEventArgs.cs
- JoinCqlBlock.cs
- DbConnectionFactory.cs
- WebPartConnectionsConfigureVerb.cs
- AmbientProperties.cs
- FrameworkContentElement.cs
- MimeTypeMapper.cs
- ResourceDictionary.cs
- streamingZipPartStream.cs
- SafeFileMapViewHandle.cs
- TemplateParser.cs
- OdbcReferenceCollection.cs
- ProxyHwnd.cs
- bindurihelper.cs
- ControlCachePolicy.cs
- KeyFrames.cs
- DefaultMemberAttribute.cs
- TransformerConfigurationWizardBase.cs
- _ListenerResponseStream.cs
- DispatchChannelSink.cs
- SafeMILHandle.cs
- WindowsPrincipal.cs
- ClientSideProviderDescription.cs
- DesignerActionPropertyItem.cs
- XmlSerializerImportOptions.cs
- ContentFileHelper.cs
- AutomationEventArgs.cs
- GCHandleCookieTable.cs
- AppearanceEditorPart.cs
- RequestQueue.cs
- Vector3DIndependentAnimationStorage.cs
- ReachPrintTicketSerializerAsync.cs
- Walker.cs
- FtpWebRequest.cs
- Unit.cs
- SHA1.cs
- WebPartsPersonalizationAuthorization.cs
- SerializerDescriptor.cs
- SQLInt64.cs
- DateBoldEvent.cs
- SequenceDesigner.xaml.cs
- Msec.cs
- UnionExpr.cs
- StringValidatorAttribute.cs
- Variant.cs
- OdbcConnectionString.cs
- ResumeStoryboard.cs
- BamlLocalizableResource.cs
- EventWaitHandleSecurity.cs
- ToolStripSeparator.cs
- Decorator.cs
- RuntimeCompatibilityAttribute.cs
- AutoGeneratedFieldProperties.cs
- FixedSOMLineRanges.cs
- ModelVisual3D.cs
- XmlSchemaComplexContentRestriction.cs
- TextBox.cs
- FixedSOMLineRanges.cs
- WhitespaceRule.cs
- DynamicResourceExtension.cs
- RuntimeArgumentHandle.cs
- SessionParameter.cs
- ADMembershipProvider.cs
- AssemblyName.cs
- GenericTextProperties.cs
- DataGridCellsPanel.cs
- XmlDomTextWriter.cs
- TextBoxAutomationPeer.cs
- XmlMtomReader.cs
- SafeFileMappingHandle.cs
- RichTextBox.cs
- ConvertersCollection.cs
- ReadOnlyDictionary.cs
- Wildcard.cs
- MemberMaps.cs
- CatalogZoneBase.cs
- ViewRendering.cs
- JsonSerializer.cs
- WebPartDisplayModeCancelEventArgs.cs
- ComEventsMethod.cs