【问题标题】:Displaying a list of Items in a WPF form using XAML使用 XAML 在 WPF 表单中显示项目列表
【发布时间】:2010-04-19 14:06:53
【问题描述】:

我正在尝试显示项目列表(这些项目的样式和控件模板在其他地方定义)并且我希望能够添加/删除任意数量的项目。因为我没有无限的屏幕空间,所以我在 ListBox 控件中显示这些。

这是我必须约会的屏幕:

将要发生的事情就是这样。当我单击新建按钮时,我希望该项目出现在轮廓区域中。

那么现在解决问题:

我希望,当我单击“新建...”按钮时,一个新项目会出现在 ListBox(已概述)中。是否可以使用 XAML 来做到这一点?我正在尝试将业务逻辑与界面分离,因此如果有某种方法可以在 XAML 中实现这一点,我将不胜感激。如果没有,我可以使用我在 C# 中创建的自定义模板项,以便它显示为模板指定在列表框中,而不是像普通的 ListBoxItem

提前致谢!

【问题讨论】:

  • 您在这里遇到的确切问题是什么?您是否有技术问题,或者这与您的应用程序设计有关?
  • 我猜您在下面的评论中隐含地回答了问题的技术方面。为了澄清,我问是否有某种方式使用 XAML 来添加项目,我想没有。

标签: .net wpf xaml


【解决方案1】:

我认为实现这一点的唯一方法是将新的(空)项添加到概述的列表视图数据绑定到的列表中。

如果创建新项目涉及任何业务逻辑,您应该要求业务逻辑层为您创建新项目,否则像往常一样实例化对象。

【讨论】:

  • 谢谢,我最终按照您的建议将数据项从业务逻辑推送到前端 :)
【解决方案2】:

您可以为此目的使用 ObesrvableCollection。使用双向绑定显示详细信息应在键入时显示在列表中。

【讨论】:

  • 感谢您的评论,我的印象是 ObservableCollection 必须是根元素,在这种情况下不能是......我的假设是错误的吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-14
  • 1970-01-01
  • 2020-06-15
  • 2016-03-22
  • 1970-01-01
相关资源
最近更新 更多