【问题标题】:Wpf treeview selectedItem databindingWpf treeview selectedItem 数据绑定
【发布时间】:2011-09-12 14:56:15
【问题描述】:

我有一个视图,其中我有一个对象绑定到树视图。该对象有许多(不同类型的)集合,所以我使用带有 CompositeCollection 的分层模板在树视图中显示它们。

然后我得到了一个绑定到树视图的 selectedItem 的文本框。在这里,我将 selectedItem 序列化为 XML 并将其显示在文本框中以进行编辑。

到目前为止一切顺利。但是,我遇到的一个大问题是我不能将 2 路数据绑定与树视图的 SelectedItem 属性一起使用,因为它是只读的。

如何让文本框编辑与绑定到树视图的对象保持同步?

【问题讨论】:

    标签: wpf treeview 2-way-object-databinding


    【解决方案1】:

    我认为您不需要对 SelectedItem 本身进行双向数据绑定,您应该在绑定对象的类中公开一个属性,该属性返回序列化字符串,并在set 适当地修改对象。这应该比将对象作为一个整体来处理更容易。

    【讨论】:

    • 感谢您的回答。我明白你的意思了。会试一试的。
    【解决方案2】:

    您的 XML 流必须表示为 SelectedItem 节点上的属性,并且您的 TextBox 必须以某种方式绑定到该属性。 SelectedItem 是只读的,但它引用的对象不是。如果您对该属性进行双向绑定,您应该能够正确影响您的编辑。这将在您使用的 DataTemplates 和 HierarchicalDataTemplates 中完成,因为它们绑定到您使用 TreeView 表示的节点的底层数据表示。

    【讨论】:

      猜你喜欢
      • 2013-02-22
      • 2012-06-19
      • 2011-11-01
      • 1970-01-01
      • 2022-09-30
      • 1970-01-01
      • 2012-05-23
      • 2011-11-01
      • 1970-01-01
      相关资源
      最近更新 更多