Formatter only change how cell is display, to trigger action, using grid.onClick to subscribe event
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;
};
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";
};
new grid.Column()
..formatter = LinkFormatter