需求:根据另一控件改变DataGrid某列的可见性(Collapsed/Hidden/Visible)
原本 绑定字段是这样写的:
Visibility="{Binding ElementName=sample,Path=IsChecked,Converter={StaticResource BoolConverter}}"
但无论加载还是运行,都无法走到转换器,一般绑定Path没有问题。
网上的解释是,DataGrid列是抽象对象,Column在视觉树上找不到,因此绑定中使用到的 [ ElementName ]、[ RelativeSource ]属性都无法直接使用,而改用 "x:Reference"就可以解决。
方法来源:
https://stackoverflow.com/questions/8847661/datagridtextcolumn-visibility-binding
同时,也把另一篇整理的不错的做个学习参考:
https://blog.youkuaiyun.com/wujingang/article/details/75314337
<