/// <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); }
/// <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; } }
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 }); }
/// <summary> /// Найти колонку в таблице /// </summary> /// <param name="field">Поле </param> /// <returns></returns> private HeaderValue FindGridColumn(AbsM.IFieldM field) { return(_columns.FirstOrDefault(f => f.Name == field.Name)); }