如何使用Winforms显示和存储复杂项目列表?

时间:2009-01-20 15:16:09

标签: c# winforms listview custom-controls

我想存储并显示复杂项目列表。每个(图形)项目必须显示图像,颜色芯片列表,标签和索引(字母)。用户还可以在每个项目中进行缩放,以显示图像的详细信息(在鼠标滚轮上),

项目将以垂直列表呈现,可滚动和可调整大小。

语言只在必要时才是C#,。net2.0或3.5。

我考虑使用自定义UserControls项目(每个项目由一个PictureBox,2个标签和一个自定义UserControl组成,以显示颜色芯片)。 对于列表,我真的不知道在ListBox,ListView或DataGridView之间做什么选择,或者我还不知道另一个。

我基本上会选择ListBox,因为它简单。你能帮我澄清使用其他清单的好处吗?

3 个答案:

答案 0 :(得分:1)

如果您希望拥有大量这些项目,我强烈建议您不要将每个项目都设置为UserControl。如果您打算在某个时候本地化和全球化应用程序,这是非常重要的。这些项目的创建将阻碍性能。

相反,采用较轻的重量方法,以使物品不具有完全控制的开销。假设每个项目都是矩形的,您可以轻松创建一个UserControl来绘制它们,包括滚动条滚动。

答案 1 :(得分:0)

在您的情况下,自定义(第三方)列表控件似乎是要走的路。根据您的要求,ListBox,ListView或DataGridView非常有限。

此致 tamberg

答案 2 :(得分:0)

感谢您的回答。这对我很有帮助。 对不起,我没有提到列表及其项目必须管理拖放与其他控件。然后,我想项目必须是单独的控件。此外,列表将是动态的,不会包含超过30个项目。

所以,如果我理解你的建议,我应该为列表创建一个自定义UserControl,为项目创建一个。