public static ExtendProperty RegisterProperty(string propertyName, Type propertyType, Type ownerType, object defaultValue, MetaData metaData) { var property = new ExtendProperty(propertyName, propertyType, ownerType); property.OverrideDefaultValue(ownerType, defaultValue); property.MetaData = metaData; ExtendPropertysProvider.Set(property.GetHashCode(), property); return(property); }
public ExtendProperty AddOwner(Type ownerType, object defaultValue) { int newOwnerHash = ownerType.GetHashCode() ^ this.PropertyName.GetHashCode(); if (defaultValue != null) { this.OverrideDefaultValue(ownerType, defaultValue); } ExtendPropertysProvider.Set(newOwnerHash, this); return(this); }