The column layout string defines the column positions, visibility, and width. Invalid information in the column layout string is ignored.
This property can be used to persist column layouts defined by users so they are preserved across sessions, and it can also be used to implement undo/redo functionality in applications that allow users to modify the column layout.
In order for the ColumnLayout property to work correctly, columns should have unique names (see Column.ColumnName property) or binding paths.