Controlling the visibility of a form's controls and action pane buttons is something very common.
But doing so for a list page is not so common.
For a normal form, to make a field invisible you would write something like below in form's init() method.
For a list page, you would write something like below in that list page's interaction class's initialized() method.
this.listPage().listPageFieldVisible(formControlStr(VendTableListPage, VendTable_YourField), false);
this.listPage().listPageArgs().menuItemName() - would let you control the list page's behavior depending on which menu item is your page getting called from.
this.listPage().actionPaneControlVisible and this.listPage().actionPaneControlEnabled - for controlling action panes behavior.
I refered VendTableListPageInteraction class for this post. Cheers.