簡體   English   中英

在 WPF DataGrid 中綁定 DataGridColumn 的 Visible 屬性

[英]Binding Visible property of a DataGridColumn in WPF DataGrid

我無法將 WPF datagridtextcolumn 的 Visible 屬性綁定到 boolean 值。

我的綁定表達式是,

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

我檢查了轉換器是否工作(布爾到可見性枚舉)並且位於 scope 中。

如果我對列的 header 使用相同的表達式,則 header 會按預期顯示“假”。

Visible 是一個依賴屬性,所以應該是可綁定的。

有人看到我做錯了什么嗎? 或者有沒有其他人能夠綁定到可見屬性。

問候,

馬特

我解決了這個問題。

DataGridCOlumn 不是框架元素,因此 FindAncestor 調用失敗(DataGridColumn 不是可視樹的一部分)

必須將綁定表達式的源屬性設置為靜態資源,它工作正常。

我一直在尋找同樣的東西,並在一篇關於將數據上下文轉發到列的文章中找到了一種出色的方法。

很難從你的代碼中說出來。 Visual Studio 的 Output window(在調試下)中有什么? 這通常會給你一個關於問題的線索。

如果您可以從代碼綁定,則可以使用

BindingOperations.SetBinding(DatagridColumInstance,
                             DatagridColum.VisibilityProperty,
                             myNewBindDef);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM