Información
El tema que ha solicitado se muestra abajo. Sin embargo, este tema no se encuentra en la biblioteca.

DependencyObject (Clase)

representa un objeto que participe en el sistema de propiedad de dependencia .

Espacio de nombres:  System.Windows
Ensamblado:  WindowsBase (en WindowsBase.dll)
XMLNS para XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[NameScopePropertyAttribute("NameScope", typeof(NameScope))]
public class DependencyObject : DispatcherObject
<DependencyObject .../>

El tipo DependencyObject expone los siguientes miembros.

  NombreDescripción
Método públicoDependencyObjectInicializa una nueva instancia de la clase de DependencyObject .
Arriba

  NombreDescripción
Propiedad públicaDependencyObjectTypeObtiene DependencyObjectType que contiene el tipo de CLR de esta instancia. 
Propiedad públicaDispatcherObtiene Dispatcher que este DispatcherObject es asociado. (Se hereda de DispatcherObject).
Propiedad públicaIsSealedObtiene un valor que indica si esta instancia está sellada actualmente (solo lectura).
Arriba

  NombreDescripción
Método públicoCheckAccessdetermina si el subproceso de la llamada tiene acceso a este DispatcherObject. (Se hereda de DispatcherObject).
Método públicoClearValue(DependencyProperty)borra el valor local de una propiedad. La propiedad que se borrará se especifica mediante un identificador de DependencyProperty .
Método públicoClearValue(DependencyPropertyKey)borra el valor local de una propiedad de sólo lectura. la propiedad que se borrará es especificada por DependencyPropertyKey.
Método públicoCoerceValuefuerza el valor de propiedad de dependenciaespecificado. Esto se logra a cualquier función de CoerceValueCallback especificada en los metadatos de propiedad para la propiedad de dependencia tal como existe en DependencyObjectque llama.
Método públicoEqualsdetermina si DependencyObject proporcionado es equivalente a DependencyObjectactual. (Invalida a Object.Equals(Object)).
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoGetHashCodeobtiene código hash para este DependencyObject. (Invalida a Object.GetHashCode()).
Método públicoGetLocalValueEnumeratorCrea un enumerador especializado para determinar qué propiedades de dependencia localmente han establecido valores en este DependencyObject.
Método públicoGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método públicoGetValuedevuelve el valor efectivo actual de propiedad de dependencia en esta instancia de DependencyObject.
Método públicoInvalidatePropertyEvalúa de nuevo el valor real de la propiedad de dependencia especificada
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método protegidoOnPropertyChangedinvocado siempre que el valor efectivo de cualquier propiedad de dependencia en este DependencyObject se haya actualizado. La propiedad de dependencia concreta cambiada se muestran en los datos de evento.
Método públicoReadLocalValuedevuelve el valor local de propiedad de dependencia, si existe.
Método públicoSetCurrentValueEstablece el valor de propiedad de dependencia sin cambiar el origen del valor.
Método públicoSetValue(DependencyProperty, Object)Establece el valor local de propiedad de dependencia, especificado por el identificador de propiedad de dependencia.
Método públicoSetValue(DependencyPropertyKey, Object)establece el valor local de un solo lectura propiedad de dependencia, especificado por el identificador de DependencyPropertyKey de la propiedad de dependencia.
Método protegidoShouldSerializePropertyDevuelve un valor que indica si los procesos de serialización debe serializar el valor de propiedad de dependenciaproporcionado.
Método públicoToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Método públicoVerifyAccessSe aplica al subproceso de llamada tiene acceso a este DispatcherObject. (Se hereda de DispatcherObject).
Arriba

La clase de DependencyObject habilita los servicios del sistema de propiedades de Windows Presentation Foundation (WPF)en sus muchas clases derivadas.

La función principal del sistema de propiedades es calcular los valores de propiedades, y proporcionar la notificación del sistema sobre los valores que han cambiado. Otra clase clave que participan en el sistema de propiedades es DependencyPropertyDependencyProperty habilita el registro de propiedades de dependencia en el sistema de propiedades, y proporciona el identificador y la información sobre cada propiedad de dependencia, mientras que DependencyObject como una clase base permite a objetos para utilizar propiedades de dependencia.

los servicios y las características deDependencyObject incluyen:

  • Propiedad de dependencia que hospeda compatibilidad. Registra propiedad de dependencia llamando al método Register , y almacenar el valor devuelto del método como un campo estático público en la clase.

  • Propiedad adjunta compatibilidad con hospedaje. Registra propiedad asociada llamando al método RegisterAttached , y almacenar el valor devuelto del método como un campo de solo lectura estático público en la clase. (También hay requisitos miembro adicionales; observe que esto representa una implementación específica de WPF para propiedades asociadas. Para obtener información detallada, vea Información general sobre propiedades asociadas.) La propiedad asociada se puede establecer en cualquier clase que se derive de DependencyObject.

  • Obtenga, establezca, y desactive los métodos de utilidad para los valores de cualquier propiedades de dependencia que existen en DependencyObject.

  • Metadatos, convierten el valor, la notificación de cambios propiedad, y las devoluciones de llamada de reemplazo para propiedades de dependencia o propiedades asociadas. Además, la clase de DependencyObject facilita los metadatos de la propiedad de por-propietario para una propiedad de dependencia.

  • una clase base común para las clases derivadas de ContentElement, de Freezable, o de Visual. (UIElement, otra clase de elemento base, tiene una jerarquía de clases que incluye Visual.)

El ejemplo siguiente se deriva de DependencyObject para crear una nueva clase abstracta. La clase después registra una propiedad adjunta e incluye miembros admiten de la propiedad asociada.


public abstract class AquariumObject3 : DependencyObject
{
    public enum Bouyancy
    {
        Floats,
        Sinks,
        Drifts
    }
    public static readonly DependencyProperty BouyancyProperty = DependencyProperty.RegisterAttached(
      "Bouyancy",
      typeof(Bouyancy),
      typeof(AquariumObject3),
      new FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange),
      new ValidateValueCallback(ValidateBouyancy)
    );
    public static void SetBouyancy(UIElement element, Bouyancy value)
    {
        element.SetValue(BouyancyProperty, value);
    }
    public static Bouyancy GetBouyancy(UIElement element)
    {
        return (Bouyancy)element.GetValue(BouyancyProperty);
    }
    private static bool ValidateBouyancy(object value)
    {
        Bouyancy bTest = (Bouyancy) value;
        return (bTest == Bouyancy.Floats || bTest == Bouyancy.Drifts || bTest==Bouyancy.Sinks);
    }
    public static readonly DependencyProperty IsDirtyProperty = DependencyProperty.Register(
      "IsDirty",
      typeof(Boolean),
      typeof(AquariumObject3)
    );
}


.NET Framework

Compatible con: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros públicos static (Shared en Visual Basic) de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

Mostrar:
© 2014 Microsoft