I would also like to say this question, what’s the use of column selection? Multi-selection features and all-select checkbox are a natural match.
Solve your problem first, I have a way to compromise.
You can pass the value of the ‘derived_viewport_indices’ to ‘selected_rows’ through a callback of the dcc.Checklist.