c# - 在 WPF DataGrid 中绑定(bind) DataGridColumn 的 Visible 属性

标签 c# wpf data-binding

我无法将 WPF datagridtextcolumn 的 Visible 属性绑定(bind)到 bool 值。

我的绑定(bind)表达式是,

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

我已经检查转换器是否工作(bool 到可见性枚举)并且在范围内。

如果我对列的标题使用相同的表达式,标题会按预期显示“false”。

Visible 是一个依赖属性,因此应该是可绑定(bind)的。

有人看到我做错了什么吗?或者有没有其他人能够绑定(bind)到可见属性。

问候,

马特

最佳答案

我解决了这个问题。

DataGridCOlumn 不是框架元素,因此 FindAncestor 调用失败(DataGridColumn 不是可视化树的一部分)

必须将绑定(bind)表达式的源属性设置为静态资源,它工作正常。

关于c# - 在 WPF DataGrid 中绑定(bind) DataGridColumn 的 Visible 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/669060/

相关文章:

C# MVVM 模式在无限循环线程中更新 UI?

c# - 有什么方法可以忽略 contentpresenter 中的应用程序资源

wpf - 如何跨 WPF 应用程序定义公共(public)资源(包括模板)?

c# - SortDescription 和自动排序顺序刷新

android - 如何在android中的DataBinding中使用内部布局

c# - MVC- View 未将模型列表值传递回 Controller

c# - Windows 窗体中菜单项的上下文相关帮助

c# - MySQL : 6. 6.5.0 版本的 MySql.Data 无法加载

wpf - 更改 Button.Click 上的 ListBox.ItemsSource 绑定(bind)属性?

c# - 如何使用 MVVM 将不同列表绑定(bind)到每行中的 DataGridComboBoxColumn