In Silverstripe 3.3.1 GridFieldExportButton seems impossible to override. In this case I am using userforms and I need to take control of functions in GridFieldExportButton like generateExportFileData() in order to alter certain behaviours like using field labels as field names in the csv and including   
 tags.

I have tried extending directly

```
class SubmissionExportButton extends GridFieldExportButton

```

Through \_config.php

```
Object::add_extension('GridFieldExportButton', 'SubmissionExportButton');

class SubmissionExportButton extends Extension{}

```

and Through Injector.

```
class SubmissionExportButton extends GridFieldExportButton{}

Injector:
  GridFieldExportButton:
    class: SubmissionExportButton

```

I have even attempted to completely replace the class and extend UserDefinedForm but his had some unexpected results. Better to simply take control of the class in question, but what is the right procedure?