/// <summary> /// /// </summary> /// <param name="type">Тип отображаемой сущности.</param> /// <param name="entity">Конкретная сущность, устанавливаемая текущей.</param> /// <param name="child">Дочерняя сущность для показа</param> public DataPresenterViewModel(Entity type, object entity, Entity child = Entity.Empty) { Entity = type; if (EntityMapper.Childs(type).Contains(child)) { ListedEntities = child; } else { ListedEntities = Entity; } // передана конкретная сущность для показа в списке сущностей этого типа if (entity != null && child == Entity.Empty) { // after delete to show near entity initIndex = ec.FindIndexOfSameEntity(entity, Items); } else { initIndex = -1; } CreateCommands(); }
/// <summary> /// /// </summary> /// <param name="type">Тип отображаемой сущности.</param> /// <param name="entity">Конкретная сущность, устанавливаемая текущей.</param> /// <param name="showEntityChilds">Показывать ли в коллекции дочерние сущности.</param> /// <param name="childIndex">Индекс дочерней сущности для показа.</param> public DataPresenterViewModel(Entity type, object entity, bool showEntityChilds = false, int childIndex = 0) : this(type, entity, showEntityChilds ? EntityMapper.Childs(type).ElementAt(childIndex) : Entity.Empty) { }