C#WPF为列表中的每个对象动态创建GUI元素

时间:2014-02-12 14:22:28

标签: c# wpf user-interface tiles

我有一个对象列表(同一个类)。这些对象中的每一个都具有几个属性。我想构建一个GUI,为每个对象显示一个“tile”,在这个“tile”中,将显示该对象的属性值。下面的图片说明了这个想法。

enter image description here

按下+瓦片可以添加新对象(可以调出对话框)。对象图块将换行到下一行,每行允许X个图块。

您有什么建议以文明的方式做到这一点,以便能够自动添加/删除磁贴作为列表中的对象被创建/删除?也许有人知道一些例子?

目前我对如何实现这一目标一无所知。

3 个答案:

答案 0 :(得分:3)

考虑使用某种ItemsControlDataTemplate。我会查看关于如何执行此操作的以下教程:http://wpftutorial.net/DataTemplates.html


正如马特·伯兰德所说,你需要将你的物品放入ObservableCollection,以便他们能够动态地出现#34;。

答案 1 :(得分:1)

请参阅这篇文章 -

WPF toolkit for tile listview

它概述了使用带有包装面板的ItemsControl创建了一个平铺效果。 希望有所帮助。

答案 2 :(得分:1)

1)使用ListBox,将ItemsSource属性绑定到List。 2)在该列表中插入您喜欢的任何类型的对象。 3)为要显示的每种对象创建DataTemplate