WinForms DataGridView替代方案

时间:2010-08-26 13:33:45

标签: c# winforms controls

我需要填充一个包含3列的列表。

首先:图标图像。 第二:一个字符串。 第三:字符串。

我开始连接一个DataGridView,它看起来非常大而且功能强大,满足了我的需求。我对在类似于电子表格的网格中显示数据不感兴趣,并且我不需要此控件附带的所有功能。还有更好的选择吗?

谢谢!

2 个答案:

答案 0 :(得分:4)

您可以转到ListView视图中的View.Details,因为这类似于您在详细信息视图中在Windows资源管理器中看到的视图。

创建一个表单,并在其上分别添加ImageListListView imageList1listView1。然后将以下代码放入表单加载方法:

listView1.Columns.Add("Image");
listView1.Columns.Add("Text1");
listView1.Columns.Add("Text2");

listView1.SmallImageList = imageList1;

var icon = Icon.ExtractAssociatedIcon(@"c:\windows\explorer.exe");
imageList1.Images.Add(icon);
var item = new ListViewItem();
item.ImageIndex = 0;

var subItem1 = new ListViewItem.ListViewSubItem();
subItem1.Text = "Text 1";
var subItem2 = new ListViewItem.ListViewSubItem();
subItem2.Text = "Text 2";

item.SubItems.Add(subItem1);
item.SubItems.Add(subItem2);

listView1.Items.Add(item);

代码实际上不会因某些整理而受到影响,但它会非常清楚地说明它正在做什么,并且应该非常清楚如何使用ListView来达到此目的。

答案 1 :(得分:1)

您可以尝试ListView。您将需要使用Columns属性和详细信息模式。