我已经看过这个场景一百次了:
开发人员需要显示一些项目。没有功能(滚动,选择等)是必需的,真的只是显示一堆东西。解决方案?他们使用ListBox
,然后编写大量的XAML来删除它的所有外观和行为(经常忘记某些东西,导致奇怪的错误)。
我的问题是:为什么不使用ItemsControl
,确实如此,从列表中取出项目并将它们放在窗口上(默认情况下放入StackPanel
,尽管可以被改变了吗?是否有任何我不知道的担忧?是否有理由直接使用这样的ItemsControl
不是一个好主意,或者这只是人们不知道他们能做到的事情?
答案 0 :(得分:2)
我的猜测是列表框在教程中更经常使用,因为在visual studio和blend中更容易找到。
查看itemscontrol是完全正确的。列表框扩展此控件以支持选择项目,除非您需要能够选择某些内容,只需使用itemscontrol即可。这应该是全程采用的相同原则,始终使用较低级别的控制来满足您的要求。
顺便说一句,我从未遇到过itemscontrol的问题。