C# – Binding Visible property of a DataGridColumn in WPF DataGrid

cdata-bindingwpf

I cannot bind the Visible property of the WPF datagridtextcolumn to a boolean value.

My binding expression is,

{Binding Path=DataContext.IsThisColumnVisible, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window},Converter={StaticResource vc}}

I have checked that the converter works (bool to the visibility enum) and is in scope.

If I use the same expression for the header of the column, the header displays 'false' as expected.

Visible is a dependency property so should be bindable.

Anyone see what Im doing wrong? Or has anyone else been able to bind to the visible property.

Regards,

Matt

Best Answer

I worked this out.

DataGridCOlumn is not a framework element so the FindAncestor call was failing (DataGridColumn not part of visual tree)

Have to set source property of binding expression to a staticresource and it works fine.

Related Topic