Seems like getTableRow() should return TableRow<S> instead of just TableRow. That way I wouldn’t have to cast getItem().
https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TableCell.html <https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TableCell.html> @Override public void updateItem(Boolean isEnabled, boolean empty) { ... TestCase testCase = (TestCase)getTableRow().getItem(); This would be nicer: TestCase testCase = getTableRow().getItem(); Seems like an easy change to the getTableRow() method: public class TableCell<S,T> extends IndexedCell<T> { ... public final TableRow getTableRow() { return tableRow.get(); } Was this an oversight, or is there a reason that getTableRow() needs to return TableRow instead of TableRow<S>? Thanks for any help. -Larry