Пример #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DependencyProperty"/> class.
 /// </summary>
 /// <param name="declaringType">The type which declares the property.</param>
 /// <param name="ownerType">The type which can own this property.</param>
 /// <param name="propertyType">The type of the property.</param>
 /// <param name="name">The name of the property.</param>
 /// <param name="defaultBindingMode">The default <see cref="BindingMode"/> for this property.</param>
 /// <param name="isAttachement">Specifies if the property is a attachement.</param>
 /// <param name="defaultValue">The default value of the property.</param>
 /// <param name="coerceValueCallback">The callback for coercing the value.</param>
 /// <param name="validationCallback">The validation callback of the value.</param>
 /// <param name="changingCallback">The changing callback of the property.</param>
 /// <param name="changedCallback">The changed callback of the property.</param>
 internal DependencyProperty(TypeInfo declaringType, String name, BindingMode defaultBindingMode, Boolean isAttachement, TProperty defaultValue, CoerceValueDelegate <TOwner, TProperty> coerceValueCallback, PropertyValidationDelegate <TOwner, TProperty> validationCallback, PropertyChangingDelegate <TOwner, TProperty> changingCallback, PropertyChangedDelegate <TOwner, TProperty> changedCallback, out DependencyPropertyKey <TProperty> key)
     : base(declaringType, Reflection.TypeOf <TOwner> .TypeInfo, name, defaultBindingMode, isAttachement, false)
 {
     _DefaultValue        = defaultValue;
     _CoerceValueCallback = coerceValueCallback;
     _ValidationCallback  = validationCallback;
     _ChangingCallback    = changingCallback;
     _ChangedCallback     = changedCallback;
     Key = key = new DependencyPropertyKey <TProperty>(this);
 }