Skip to content

Extension

ExtensionFormCell control is used to render an entire custom cell inside a FormCell Container. It gives the application designer the ability to customize the look-and-feel and behavior of the client via their own extensions.

Extension Properties

Property Type Required Default
Class string Required
Control string Optional
ExtensionProperties object Optional
Height integer Optional
IsVisible boolean Optional true
Module string Optional
OnPress ActionOrRule Optional
Target LinkQueryTarget Optional
_Name string Required
_Type const Required

Class

The name of the exported class in the module control that is to be used for the extension.

  • type: string

Control

The name of the file under the controls folder in your module. e.g. MyExtension, if your file name is /extensions/<Module>/controls/MyExtension.ts. If not specified, module name would be used as the value for this property.

  • type: string

ExtensionProperties

Additional properties to be passed to the Extension

  • type: object

Height

The height of the extension in Device Independent Pixel. The DIP value will be converted to pixels of the platform (based on scale and on density for iOS and Android respectively).

  • type: integer

IsVisible

Sets the visibility of the control.

  • type: boolean
  • default: true

Module

The module's folder name under /extensions/ e.g. MyExtModule. Not required if Extension does not implement TS code under /extensions/<Module>/controls.

  • type: string

OnPress

Action/Rule to be triggered when the extension is pressed


Target

Binding target for this extension


_Name

UID to reference this control

  • type: string

_Type

  • type: const

The value of this property must be equal to:

"Control.Type.FormCell.Extension"

Examples

{
  "_Type": "Page",
  "_Name": "FormCellsPage",
  "Caption": "Extension FormCell Page",
  "Controls": [{
    "_Name": "FormCellContainer",
    "_Type": "Control.Type.FormCellContainer",
    "Sections": [{
      "Caption": "Extension FormCell Section",
      "Controls": [{
        "_Type": "Control.Type.FormCell.Extension",
        "_Name": "ExtensionFormCell",
        "Module": "DevAppExtension",
        "Control": "MyFormCellExtension",
        "Class": "MyFormCellExtension",
        "Height": 300,
        "ExtensionProperties": {
          "MyProp1": {
            "Caption": "Test"
          },
          "MyProp2": "/MDKApp/Globals/Test.global",
          "MyEvent1": "/MDKApp/Actions/Messages/Message2.action"
        },
        "Target": {
          "EntitySet": "MyWorkOrderHeaders",
          "Service": "/MDKApp/Services/Amw.service",
          "QueryOptions": "$expand=Operations&$orderby=OrderId&$top=3"
        },
        "OnPress": "/MDKApp/Actions/Messages/Message.action"
      }]
    }]
  }]
}