---
title: "tableView(_:shouldSelect:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nstableviewdelegate/tableview(_:shouldselect:)"
---

# tableView(_:shouldSelect:)

Asks the delegate whether the specified table column can be selected.

## Declaration

```swift
@MainActor optional func tableView(_ tableView: NSTableView, shouldSelect tableColumn: NSTableColumn?) -> Bool
```

## Parameters

- `tableView`: The table view that sent the message.
- `tableColumn`: The table column.

## Return Value

Return Value true to permit selection, otherwise false.

## Discussion

Discussion The delegate can implement this method to disallow selection of particular columns.

## See Also

### Selecting rows

- [selectionShouldChange(in:)](appkit/nstableviewdelegate/selectionshouldchange(in:).md)
- [tableView(_:shouldSelectRow:)](appkit/nstableviewdelegate/tableview(_:shouldselectrow:).md)
- [tableView(_:selectionIndexesForProposedSelection:)](appkit/nstableviewdelegate/tableview(_:selectionindexesforproposedselection:).md)
- [tableViewSelectionIsChanging(_:)](appkit/nstableviewdelegate/tableviewselectionischanging(_:).md)
- [tableViewSelectionDidChange(_:)](appkit/nstableviewdelegate/tableviewselectiondidchange(_:).md)
- [tableView(_:shouldTypeSelectFor:withCurrentSearch:)](appkit/nstableviewdelegate/tableview(_:shouldtypeselectfor:withcurrentsearch:).md)
- [tableView(_:typeSelectStringFor:row:)](appkit/nstableviewdelegate/tableview(_:typeselectstringfor:row:).md)
- [tableView(_:nextTypeSelectMatchFromRow:toRow:for:)](appkit/nstableviewdelegate/tableview(_:nexttypeselectmatchfromrow:torow:for:).md)
