DefaultValueAttribute Class

Definition

Specifies the default value for a property.

public ref class DefaultValueAttribute : Attribute
public ref class DefaultValueAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public class DefaultValueAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class DefaultValueAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All)>]
type DefaultValueAttribute = class
    inherit Attribute
Public Class DefaultValueAttribute
Inherits Attribute
Public NotInheritable Class DefaultValueAttribute
Inherits Attribute
Inheritance
DefaultValueAttribute
Attributes

Examples

The following example sets the default value of MyProperty to false.

private:
   bool _myVal;

public:
   [DefaultValue(false)]
   property bool MyProperty 
   {
      bool get()
      {
         return _myVal;
      }

      void set( bool value )
      {
         _myVal = value;
      }
   }

private bool _myVal = false;

[DefaultValue(false)]
public bool MyProperty
{
    get
    {
        return _myVal;
    }
    set
    {
        _myVal = value;
    }
}

Private _myVar As Boolean = False

<DefaultValue(False)>
Public Property MyProperty() As Boolean
    Get
        Return _myVar
    End Get
    Set
        _myVar = Value
    End Set
End Property

The next example checks the default value of MyProperty. First the code gets a PropertyDescriptorCollection with all the properties for the object. Next it indexes into the PropertyDescriptorCollection to get MyProperty. Then it returns the attributes for this property and saves them in the attributes variable.

The example then prints the default value by retrieving the DefaultValueAttribute from the AttributeCollection, and writing its name to the console screen.

// Gets the attributes for the property.
AttributeCollection^ attributes = TypeDescriptor::GetProperties( this )[ "MyProperty" ]->Attributes;

/* Prints the default value by retrieving the DefaultValueAttribute 
      * from the AttributeCollection. */
DefaultValueAttribute^ myAttribute = dynamic_cast<DefaultValueAttribute^>(attributes[ DefaultValueAttribute::typeid ]);
Console::WriteLine( "The default value is: {0}", myAttribute->Value );
// Gets the attributes for the property.
AttributeCollection attributes =
    TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;

/* Prints the default value by retrieving the DefaultValueAttribute 
 * from the AttributeCollection. */
DefaultValueAttribute myAttribute =
    (DefaultValueAttribute) attributes[typeof(DefaultValueAttribute)];
Console.WriteLine("The default value is: " + myAttribute.Value.ToString());
' Gets the attributes for the property.
Dim attributes As AttributeCollection =
        TypeDescriptor.GetProperties(Me)("MyProperty").Attributes

' Prints the default value by retrieving the DefaultValueAttribute
' from the AttributeCollection. 
Dim myAttribute As DefaultValueAttribute =
        CType(attributes(GetType(DefaultValueAttribute)), DefaultValueAttribute)
Console.WriteLine(("The default value is: " & myAttribute.Value.ToString()))

Remarks

You can create a DefaultValueAttribute with any value. A member's default value is typically its initial value. A visual designer can use the default value to reset the member's value. Code generators can use the default values also to determine whether code should be generated for the member.

Note

A DefaultValueAttribute will not cause a member to be automatically initialized with the attribute's value. You must set the initial value in your code.

For more information, see Attributes.

Constructors

DefaultValueAttribute(Boolean)

Initializes a new instance of the DefaultValueAttribute class using a Boolean value.

DefaultValueAttribute(Byte)

Initializes a new instance of the DefaultValueAttribute class using an 8-bit unsigned integer.

DefaultValueAttribute(Char)

Initializes a new instance of the DefaultValueAttribute class using a Unicode character.

DefaultValueAttribute(Double)

Initializes a new instance of the DefaultValueAttribute class using a double-precision floating point number.

DefaultValueAttribute(Int16)

Initializes a new instance of the DefaultValueAttribute class using a 16-bit signed integer.

DefaultValueAttribute(Int32)

Initializes a new instance of the DefaultValueAttribute class using a 32-bit signed integer.

DefaultValueAttribute(Int64)

Initializes a new instance of the DefaultValueAttribute class using a 64-bit signed integer.

DefaultValueAttribute(Object)

Initializes a new instance of the DefaultValueAttribute class.

DefaultValueAttribute(SByte)

Initializes a new instance of the DefaultValueAttribute class using a SByte value.

DefaultValueAttribute(Single)

Initializes a new instance of the DefaultValueAttribute class using a single-precision floating point number.

DefaultValueAttribute(String)

Initializes a new instance of the DefaultValueAttribute class using a String.

DefaultValueAttribute(Type, String)

Initializes a new instance of the DefaultValueAttribute class, converting the specified value to the specified type, and using an invariant culture as the translation context.

DefaultValueAttribute(UInt16)

Initializes a new instance of the DefaultValueAttribute class using a UInt16 value.

DefaultValueAttribute(UInt32)

Initializes a new instance of the DefaultValueAttribute class using a UInt32 value.

DefaultValueAttribute(UInt64)

Initializes a new instance of the DefaultValueAttribute class using a UInt64 value.

Properties

TypeId

When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)
Value

Gets the default value of the property this attribute is bound to.

Methods

Equals(Object)

Returns whether the value of the given object is equal to the current DefaultValueAttribute.

GetHashCode()

Returns the hash code for this instance.

GetType()

Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute()

When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object)

When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
SetValue(Object)

Sets the default value for the property to which this attribute is bound.

ToString()

Returns a string that represents the current object.

(Inherited from Object)

Explicit Interface Implementations

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Applies to

See also