Formatter only change how cell is display, to trigger action, using grid.onClick to subscribe event

Formatter function, see grid.TFormatter


       TFormatter get LinkFormatter =>(int row, int cell, dynamic value, grid.Column columnDef, dataContext) {
          if(value %5==0) return "<a href='#'>Link - $value</a>";
          if(value %3==0) return "<div style='color:red;text-align:right;width:100%;'>$value</div>";
          return value;
        };
      
      

Formatter getter


   TFormatter get mySpecial=> (int row, int cell, dynamic value, grid.Column columnDef, dataContext) {
    /**demo code for ser/deser */
    var colStr = JSON.encode(columnDef);
    new grid.Column.fromJSON(colStr);
    /** end */
    return "$value";
  };

      
      

Apply Formatter


      new grid.Column()
        ..formatter = LinkFormatter