Пример #1
0
 /// <summary>
 /// Находит атрибут по полю таблицы
 /// </summary>
 /// <param name="field">Поле таблицы</param>
 /// <returns>Атрибут</returns>
 public PgAtM.PgAttributeM FindAttribute(AbsM.IFieldM field)
 {
     for (int i = 0; i < Attributes.Count; i++)
     {
         var item = _attributes[i];
         if (item.Field.Equals(field))
         {
             return(item);
         }
     }
     return(null);
 }
Пример #2
0
        /// <summary>
        /// Исключение поля из используемых для индекса
        /// </summary>
        public void Exclude(object parameter = null)
        {
            var fields = parameter as IList;

            while (fields.Count > 0)
            {
                AbsM.IFieldM field = (AbsM.IFieldM)fields[0];
                NotIndexedFields.Add(field);
                IndexedFields.Remove(field);
                NotIndexedSelectedItem = field;
            }
        }
Пример #3
0
        private static DataGridColumn CreateColumn(HeaderValue value)
        {
            //todo Sergey: Создать колонки нужного типа
            AbsM.IFieldM field = value.Header as AbsM.IFieldM;
            System.Windows.Data.BindingBase bindBase = null;

            switch (field.Type)
            {
            case Rekod.DataAccess.AbstractSource.Model.EFieldType.Date:
            {
                bindBase = new Binding(string.Format("[{0}]", value.Name))
                {
                    StringFormat = "yyyy-MM-dd"
                };
                break;
            }

            case Rekod.DataAccess.AbstractSource.Model.EFieldType.DateTime:
            {
                bindBase = new Binding(string.Format("[{0}]", value.Name))
                {
                    StringFormat = "yyyy-MM-dd HH:mm:ss"
                };
                break;
            }

            default:
            {
                bindBase = new Binding(string.Format("[{0}]", value.Name));
                if (value.IsReadOnly)
                {
                    (bindBase as Binding).Mode = BindingMode.OneWay;
                }
                break;
            }
            }

            return(new DataGridTextColumn
            {
                Header = field.Text,
                Binding = bindBase,
                SortMemberPath = value.Name
            });
        }
Пример #4
0
 /// <summary>
 /// Найти колонку в таблице
 /// </summary>
 /// <param name="field">Поле </param>
 /// <returns></returns>
 private HeaderValue FindGridColumn(AbsM.IFieldM field)
 {
     return(_columns.FirstOrDefault(f => f.Name == field.Name));
 }