2010-04-19 60 views
0

我正在尝试显示项目列表(这些项目的样式和控件模板在其他地方定义),我希望能够添加/删除尽可能多的项目至。由于我没有无限的屏幕房地产,我显示这些在一个ListBox控件。使用XAML在WPF窗体中显示项目列表

这是屏幕,我要约会:

alt text

什么事情发生是这样的。当我点击新建按钮时,我希望项目出现在空白区域。

所以,现在的问题:

我想,当我点击New ...按钮,一个新的项目出现在列表框(概述)。使用XAML可以做到这一点吗?我试图从界面上分离业务逻辑,所以如果有一些方法可以在XAML中实现这一点,我将不胜感激。如果没有,我可以使用我在C#中创建的自定义模板项目,以便它将显示为模板在列表框中指定的而不是像正常的ListBoxItem

在此先感谢!

+0

这里有什么确切的问题?你有技术问题,还是关于你的应用程序的设计? – 2010-04-19 06:08:49

+0

我想这个问题的技术方面在下面的评论中隐含地回答了。为了澄清,我问是否有一些使用XAML添加项目的方式,我猜并不是这样。 – TerrorAustralis 2010-04-19 06:41:35

回答

4

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

如果在创建新项目时涉及到任何业务逻辑,您应该要求业务逻辑层为您创建新项目,否则按照通常的方式实例化对象。

+0

谢谢,我最终推荐了从我的业务逻辑到前端的数据项,正如你所建议的:) – TerrorAustralis 2010-04-19 06:47:47

0

您可以使用ObesrvableCollection达到此目的。使用双向绑定来显示在输入时应该在列表中显示的细节。

+0

感谢您的评论,我的印象是ObservableCollection必须是根元素,在这种情况下不能我在这个假设中错了吗? – TerrorAustralis 2010-04-19 06:45:47