Winforms DataBind 到控件的可见属性

标签 winforms data-binding .net-3.5 bindingsource

数据绑定(bind)到控件的可见属性时是否存在任何已知问题?
无论我的属性是什么,该控件始终不可见。

Public ReadOnly Property IsRibbonCategory() As Boolean
    Get
        Return True
    End Get
End Property
我尝试了控件的文本属性和其他属性,它们似乎工作正常。
我正在尝试设置面板的可见属性。

最佳答案

我发现如果你假设绑定(bind)到控件的 Visible 属性被破坏,尽管它有时会起作用,但生活会更好。见 http://support.microsoft.com/kb/327305 ,这说明了很多(虽然知识库文章适用于 .NET 1.0 和 1.1,但至少在 2.0 中似乎仍然是一个问题)。

我创建了一个用于创建绑定(bind)的实用程序类,除其他外,它为我提供了一个集中的位置来添加解决方法。它没有在 Visible 上实际创建绑定(bind),而是做了两件事:

  • 它订阅数据源的 INotifyPropertyChanged.PropertyChanged 事件,并在引发事件时根据需要设置 Visible 值。
  • 它根据当前数据源值设置 Visible 的初始值。

  • 这需要一点反射代码,但还不错。不要绑定(bind) Visible 属性 至关重要。和 做解决方法,否则它将不起作用。

    关于Winforms DataBind 到控件的可见属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/730755/

    相关文章:

    c# - ComboBox 绑定(bind)到自定义 ViewModel

    c# - 查找并替换方程式(正则表达式?)

    c# - Visual Studio 在运行程序后向 DataGridView 添加列

    c# - 隐藏()和可见之间的控制差异?

    asp.net - 如何在DetailsView内的UpdatePanel中将数据绑定(bind)到DropDownList

    wcf - .Net 3.5 堆栈的 REST API 有哪些选项

    .net - 并排 ClickOnce 安装

    c# - 关于 .NET CollectionEditor 类型的问题

    c# - 后台对象的初始化

    WPF:ListView 中的进度条