C# 绑定词典<>;。键。数到一个标签

C# 绑定词典<>;。键。数到一个标签,c#,binding,dictionary,C#,Binding,Dictionary,我有一个字典,希望使用标签显示此字典中的项目数,而无需在每次从字典中添加或删除项目时手动更新标签 我在Binding类中尝试过: Binding bindingNodeCount = new Binding("Text", _graphDisplay.data.nodes.Keys, "Count"); labelNumberOfNodes.DataBindings.Add(bindingNodeCount); 不幸的是,无法绑定“Count”属性(至少它向我抛出了一个参数异常,表示他无法将属

我有一个字典,希望使用标签显示此字典中的项目数,而无需在每次从字典中添加或删除项目时手动更新标签

我在Binding类中尝试过:

Binding bindingNodeCount = new Binding("Text", _graphDisplay.data.nodes.Keys, "Count");
labelNumberOfNodes.DataBindings.Add(bindingNodeCount);
不幸的是,无法绑定“Count”属性(至少它向我抛出了一个参数异常,表示他无法将属性Count绑定到数据源)

是否有其他方法可以自动更新“我的字典”中项目计数的显示

提前感谢,,
弗兰克

这在多个层面上都行不通:

  • 您无法绑定到容器的属性(例如
    )-它假定您需要容器中的第一项(即
    .Keys[0]。计数
  • 字典不提供通知事件
要执行您想要的操作,您可能需要有自己的字典实现(或子类)和命名事件,并手动将更高级别的对象(
data
graphDisplay
)传播为facade属性,然后转发事件


手动更新会更容易,我想。

同意,要想找到捷径似乎还有很长的路要走。是的,当字典被更改并以我的形式使用此事件时,我通过触发一个事件解决了这个问题。