Все панели (поля) в интерфейсе отображаются с помощью стандартных элементов управления (view) каждому из которых соответствует тип панели. Типы панелей описываются с помощью перечисления:

public enum ViewFieldTypes
    {
        Untyped             =   -1,
        /// <summary>
        /// Простая панель с данными, заголовок + текстовое значение с цветовой разметкой
        /// </summary>
        SimpleView          =   0,
        /// <summary>
        /// Отображение клиента, не путать с обычным отображением базового объекта (вьюха будет другая)
        /// </summary>
        ClientView          =   1,
        /// <summary>
        /// Уведомление 
        /// </summary>
        Notification        =   2,
        /// <summary>
        /// Блок обратной связи (телефония, цап, смс и т.д.)
        /// </summary>
        CallBackBlock       =   3,
        /// <summary>
        /// Флаги базового объекта
        /// </summary>
        Flags               =   4,
        /// <summary>
        /// Комментарий 
        /// </summary>
        Comment             =   5,
        /// <summary>
        /// Панель отображения базового объекта (клиент, договор и т.д.)
        /// </summary>
        BaseObjectView =   6,
        /// <summary>
        /// Панель отображения LiteView блока
        /// </summary>
        BaseObjectLiteView = 7,
		    /// <summary>
		    /// Нужен для отображения сводки по объекту. Значение идет под названием панели
		    /// </summary>
		    SummaryInfo = 8,
		    /// <summary>
        /// Заголовок, значение с цветовой разметкой и подробный текст детализация, который будет открываться по клику.
        /// Например в блоке анализа звонка ИИ
        /// </summary>
        SimpleWithTextDetail = 9,
        /// <summary>
        /// Иконка
        /// </summary>
        Icon = 10,
        /// <summary>
        /// Текст и процент и подробная детализация - основной
        /// </summary>
        TextPercentAndDetailMain = 11,
        /// <summary>
        /// Текст и процент и подробная детализация - для доп.вопросов
        /// </summary>
        TextPercentAndDetailAdditional = 12,
        /// <summary>
        /// Комментарий для лидера разговора в анализе ИИ
        /// </summary>
        CommentLeader = 13,
        /// <summary>
        /// Похож на простой вид, но с икнокой перед Value
        /// </summary>
        SimpleWithIcon = 14,
    }
  1. SimpleView

    Текст только в одну строку и всплывашка при наведении

    Реализация в PrimaryView

    image.png

    На картинке отображены три панели с типом SimpleView. При отображении заголовок всегда слева, значение справа. Если задан цвет, то панель окрашивается целиков в указанный цвет.

    Если Detailing не пусто, то в LiteView и PrimaryView добавлять его значение серым цветом

    image.png

    Реализация в ContextView.

    image.png

    Реализация в CanbanView

    image.png

  2. ClientView

    Отображает клиента и блок контактной информации (на момент написания статьи реализована только для контекстного блока)

    image.png

  3. Notification

    Для ContextView

    image.png

  4. CallBackBlock

    Отображает блок обратной связи с клиентом в виде набора функциональных кнопок (на момент написания статьи реализована только для контекстного блока)

    image.png

  5. Flags (на момент написания статьи НЕ используется)

  6. Comment

    Реализация в контекстном виде приведена на рисунке ниже. Тут многострочный текст, в отличии от SimpleView

    image.png

    Реализация к канбан-карточке

    image.png

    Реализация в LiteView

    image.png

    Реализация в PrimaryView и PrimaryEdit.

    image.png

    Дополнительно в PrimaryView и PrimaryEdit может быть заполнено поле Detailing данными последнего изменения этого комментария - его показывать серым цветом

    image.png

    image.png

  7. BaseObjectView

    Для CanbanView

    image.png

    Для PrimaryView

    image.png

  8. BaseObjectLiteView (на текущий момент не используется на клиенте)

  9. SummaryInfo

    image.png

    с детализацией (заполнен Detailing) Если Detailing пусто, то SystemColor применяется к большой цифре, а если не пусто, то большая - черным цветом, а SystemColor применяем к маленькой

    image.png

    Важно! В данной панели допустимо использовать свойство Command для отображения команды, связанной с полем.

    ClientBalancePanel = new FieldViewDto()
    	{
    		Code = "infoClientBalance",
    		Title = "Текущий баланс",
    		Value = XL.Base.Utils.CommonTools.FormatSumm(item.TotalBalanceSumSt),
    		FieldType = ViewFieldTypes.SummaryInfo,
    		Command = new FieldViewCommand()
    		{
    			CommandType = CommandTypes.OpenCustomView,
    			Title = "Акт сверки",
    			BaseObjectId = item.ID,
    			BaseObjectType = BaseObjectTypes.Client,
    			CustomView = "ClientBalanceView"
    		}
    	};
    
  10. SimpleWithTextDetail

    В PrimaryView и LiteView. По клику на value (цифра/текст) рядом должно отобразиться окно с подробным описанием из Detailing

    image.png

    image.png

  11. Icon

В PrimaryView и LiteView - имя иконки

image.png

image.png

  1. TextPercentAndDetailMain

    В PrimaryView

    image.png

  2. TextPercentAndDetailAdditional

    В PrimaryView

    image.png

  3. CommentLeader

    В PrimaryView

    image.png

    В PrimaryEdit

    image.png

  4. SimpleWithIcon

    в PrimaryView и PrimaryEdit

    image.png