I need to save an string inside a Datagrid Column which differs from the Header.
This is needed because I generate a Datagrid dynamically and want to translate the Column Headers while generating them. Then I bind the whole XAML to a ContentControl.
No problem till here… But I want to reorder and resize the columns, so I need to lookup them afterwoods. For this I need the original (not translated) ColumnHeader.
In my opinion a Tag property of the column would solve this problem, but there is no 🙁
In WPF, you have virtually unlimited “Tag” properties by using Attached Properties. An attached property can be set on any
DependencyObject. A good example of such an attached property isGrid.Row. Since you can define them, you also have the possibility of naming them something more meaningful than Tag.Sample code for defining an attached property:
Usage :