Because DataGrid
columns are abstract objects which do not appear in the logical or visual tree of your window. You cannot bind properties on them using ElementName
(there will be no namescope which is needed for those bindings).
You can try using Source
and x:Reference
instead, e.g.
{Binding Source={x:Reference TextCol01}, Path=ActualWidth}