Пример #1
0
 /// <summary>
 /// Initializes a new instance of the ObjectClass class.
 /// </summary>
 /// <param name="obj">Шаблон, для которого создается атрибут.</param>
 /// <param name="fieldName">аименование атрибута.</param>
 /// <param name="fieldType">Тип атрибута.</param>
 /// <param name="sys">Представление атрибута.</param>
 internal Field(ObjectClass obj, string fieldName, FieldType fieldType, SystemProperty sys)
 {
     this.objectClass  = obj;
     this.order        = -1;
     this.system       = sys;
     this.name         = fieldName;
     this.comment      = string.Empty;
     this.defaultValue = new DefaultValue(fieldType);
     this.ChangeFieldType(fieldType);
     this.expression = string.Empty;
     this.category   = this.IsPageField ? fieldName : Strings.Common;
 }
Пример #2
0
        /// <summary>
        /// Метод менят тип атрибута на fieldType, при этом значения data и default тоже изменяются на
        /// соответствющие новому типу.
        /// </summary>
        /// <param name="fieldType">Новый тип для данного атрибута.</param>
        private void ChangeFieldType(FieldType fieldType)
        {
            if (this.type != fieldType)
            {
                if (this.defaultValue != null)
                {
                    this.defaultValue.InitializaNewValue(fieldType);
                }
                else
                {
                    this.defaultValue = new DefaultValue(fieldType);
                }
            }

            this.type = fieldType;
            this.CreateDataProperty();
        }