ReadOnlyAttribute ReadOnlyAttribute ReadOnlyAttribute ReadOnlyAttribute Class

Definición

Especifica si la propiedad a la que está enlazado este atributo es de sólo lectura o de lectura y escritura.Specifies whether the property this attribute is bound to is read-only or read/write. Esta clase no se puede heredar.This class cannot be inherited

public ref class ReadOnlyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class ReadOnlyAttribute : Attribute
type ReadOnlyAttribute = class
    inherit Attribute
Public NotInheritable Class ReadOnlyAttribute
Inherits Attribute
Herencia
ReadOnlyAttributeReadOnlyAttributeReadOnlyAttributeReadOnlyAttribute
Atributos

Ejemplos

En el ejemplo de código siguiente se marca una propiedad como de solo lectura.The following code example marks a property as read-only.

   [ReadOnly(true)]
   int get()
   {
      // Insert code here.
      return 0;
   }
}
[ReadOnly(true)]
 public int MyProperty {
    get {
       // Insert code here.
       return 0;
    }
}
Public ReadOnly Property MyProperty() As Integer
    Get
        ' Insert code here.
        Return 0
    End Get
End Property

En el ejemplo de código siguiente se muestra cómo comprobar el valor ReadOnlyAttribute de MyPropertypara.The next code example shows how to check the value of the ReadOnlyAttribute for MyProperty. En primer lugar, el código PropertyDescriptorCollection obtiene una con todas las propiedades del objeto.First, the code gets a PropertyDescriptorCollection with all the properties for the object. A continuación, indexa en el PropertyDescriptorCollection para obtener. MyPropertyNext, it indexes into the PropertyDescriptorCollection to get MyProperty. A continuación, devuelve los atributos de esta propiedad y los guarda en la variable Attributes.Then it returns the attributes for this property and saves them in the attributes variable.

En el ejemplo se presentan dos maneras diferentes de comprobar el valor ReadOnlyAttributede.The example presents two different ways of checking the value of the ReadOnlyAttribute. En el segundo fragmento de código, el ejemplo llama Equals al método.In the second code fragment, the example calls the Equals method. En el último fragmento de código, en el ejemplo IsReadOnly se utiliza la propiedad para comprobar el valor.In the last code fragment, the example uses the IsReadOnly property to check the value.

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

// Checks to see whether the value of the ReadOnlyAttribute is Yes.
if ( attributes[ ReadOnlyAttribute::typeid ]->Equals( ReadOnlyAttribute::Yes ) )
{
   // Insert code here.
}

// This is another way to see whether the property is read-only.
ReadOnlyAttribute^ myAttribute = dynamic_cast<ReadOnlyAttribute^>(attributes[ ReadOnlyAttribute::typeid ]);
if ( myAttribute->IsReadOnly )
{
   // Insert code here.
}
// Gets the attributes for the property.
AttributeCollection attributes = 
   TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;
 
// Checks to see whether the value of the ReadOnlyAttribute is Yes.
if(attributes[typeof(ReadOnlyAttribute)].Equals(ReadOnlyAttribute.Yes)) {
   // Insert code here.
}
 
// This is another way to see whether the property is read-only.
ReadOnlyAttribute myAttribute = 
   (ReadOnlyAttribute)attributes[typeof(ReadOnlyAttribute)];
if(myAttribute.IsReadOnly) {
   // Insert code here.
}
' Gets the attributes for the property.
Dim attributes As AttributeCollection = _
    TypeDescriptor.GetProperties(Me)("MyProperty").Attributes

' Checks to see whether the value of the ReadOnlyAttribute is Yes.
If attributes(GetType(ReadOnlyAttribute)).Equals(ReadOnlyAttribute.Yes) Then
    ' Insert code here.
End If 

' This is another way to see whether the property is read-only.
Dim myAttribute As ReadOnlyAttribute = _
    CType(attributes(GetType(ReadOnlyAttribute)), ReadOnlyAttribute)
    
If myAttribute.IsReadOnly Then
    ' Insert code here.
End If 

Si marcó una clase con ReadOnlyAttribute, use el siguiente ejemplo de código para comprobar el valor.If you marked a class with the ReadOnlyAttribute, use the following code example to check the value.

AttributeCollection^ attributes = TypeDescriptor::GetAttributes( MyProperty );
if ( attributes[ ReadOnlyAttribute::typeid ]->Equals( ReadOnlyAttribute::Yes ) )
{
   // Insert code here.
}
AttributeCollection attributes = 
   TypeDescriptor.GetAttributes(MyProperty);
if(attributes[typeof(ReadOnlyAttribute)].Equals(ReadOnlyAttribute.Yes)) {
   // Insert code here.
}
Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(MyProperty)
If attributes(GetType(ReadOnlyAttribute)).Equals(ReadOnlyAttribute.Yes) Then
    ' Insert code here.
End If 

Comentarios

Los miembros que están marcados ReadOnlyAttribute con el true establecido en o que no tienen Set un método no se pueden cambiar.Members that are marked with the ReadOnlyAttribute set to true or that do not have a Set method cannot be changed. Los miembros que no tienen este atributo o que están marcados con ReadOnlyAttribute el establecido false en son de lectura y escritura, y se pueden cambiar.Members that do not have this attribute or that are marked with the ReadOnlyAttribute set to false are read/write, and they can be changed. De manera predeterminada, es No.The default is No.

Importante

La PropertyDescriptor clase exige ReadOnlyAttribute en el entorno de diseño y en tiempo de ejecución.The PropertyDescriptor class enforces the ReadOnlyAttribute in the design environment and at run time. Cuando se marca una propiedad con la ReadOnlyAttribute propiedad establecida trueen, el valor de este atributo se establece en el miembro Yesde constante.When you mark a property with the ReadOnlyAttribute set to true, the value of this attribute is set to the constant member Yes. Para una propiedad marcada con el ReadOnlyAttribute establecido en false, el valor es No.For a property marked with the ReadOnlyAttribute set to false, the value is No. Por lo tanto, si desea comprobar el valor de este atributo en el código, debe especificar el atributo como ReadOnlyAttribute.Yes o. ReadOnlyAttribute.NoTherefore, when you want to check the value of this attribute in your code, you must specify the attribute as ReadOnlyAttribute.Yes or ReadOnlyAttribute.No.

Para obtener más información, consulte Attributes (Atributos).For more information, see Attributes.

Constructores

ReadOnlyAttribute(Boolean) ReadOnlyAttribute(Boolean) ReadOnlyAttribute(Boolean) ReadOnlyAttribute(Boolean)

Inicializa una nueva instancia de la clase ReadOnlyAttribute.Initializes a new instance of the ReadOnlyAttribute class.

Campos

Default Default Default Default

Especifica el valor predeterminado de ReadOnlyAttribute, que es No (es decir, la propiedad a la que está enlazado este atributo es de lectura y escritura).Specifies the default value for the ReadOnlyAttribute, which is No (that is, the property this attribute is bound to is read/write). Este campo static es de solo lectura.This static field is read-only.

No No No No

Especifica que la propiedad a la que está enlazado este atributo es de lectura y escritura y se puede modificar.Specifies that the property this attribute is bound to is read/write and can be modified. Este campo static es de solo lectura.This static field is read-only.

Yes Yes Yes Yes

Especifica que la propiedad a la que está enlazado este atributo es de sólo lectura y no se puede modificar en el explorador de servidores.Specifies that the property this attribute is bound to is read-only and cannot be modified in the server explorer. Este campo static es de solo lectura.This static field is read-only.

Propiedades

IsReadOnly IsReadOnly IsReadOnly IsReadOnly

Obtiene un valor que indica si la propiedad a la que está enlazado este atributo es de sólo lectura.Gets a value indicating whether the property this attribute is bound to is read-only.

TypeId TypeId TypeId TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Métodos

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Indica si esta instancia y un objeto especificado son iguales.Indicates whether this instance and a specified object are equal.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Devuelve el código hash de esta instancia.Returns the hash code for this instance.

GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Determina si este atributo es el valor predeterminado.Determines if this attribute is the default.

Match(Object) Match(Object) Match(Object) Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Implementaciones de interfaz explícitas

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

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.Maps a set of names to a corresponding set of dispatch identifiers.

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

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.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) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).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) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Se aplica a

Consulte también: