Datagrid Frozen column and header opposite of one another

I am trying to add a way for the user to choose which columns are frozen at any time. For this I added a simple toggle button (for now) on top of the grid which toggles a bool. My first column's Frozen property is set to this bool value.

The problem occurs after toggling it to true, the column is frozen but the header is not, and after toggling it to false - the column is not frozen but the header becomes frozen.
My questions are:
Is toggling a bool the best way to do this, and if not what would be?
How to fix this unexpected behavior?

Fixed by calling .Reload() on the data grid after freezing whichever columns I want.

Hi @Kyle,

Not sure why you need to call Reload() in this case. Here is what worked for me:

Thank you for your response and that definitely would work; however, my initial plan was to include a drop down with a check box list in it for users to select which columns to be frozen, and that plan may or may not come to fruition but I will definitely keep your solution in mind.

Thank you.