我想在WinForms中创建一个带有这样的删除按钮的listView:
经过一番搜索,看起来似乎是ObjectListView。经过多次努力,我已经有文字出现在我的项目中,但我无法显示图标。我尝试过ImageAspectName
路线和ImageGetter
路线 - 没有成功。这是我为一些示例代码所获得的内容:
我的课程:
public class item
{
public string Title { get; set; }
public Image RemoveButton { get; set; }
}
将项目放在ObjectListView中的代码:
item listItem1 = new item();
listItem1.Title = "this is a test title";
listItem1.RemoveButton = Properties.Resources.Remove;
List<item> listItems = new List<item>() { listItem1 };
objectListView1.SetObjects(listItems);
olvColumn2.ImageGetter += delegate (object rowObject) { return ((item)rowObject).RemoveButton; };
我的第一个问题是:我可以像我上面那样使用Properties.Resources.Remove
吗?构建行动应该是什么?只是&#34;资源&#34;?
编辑:
如果我尝试使用objectListView1.SmallImageList
,则会抛出异常(IndexOutOfRangeException):
ImageList imageList = new ImageList();
imageList.Images.Add(Properties.Resources.Remove);
objectListView1.SmallImageList = imageList;
我也尝试使用不同尺寸的相同图像(16x16而不是256x256),但无济于事。
这是我的简单测试项目,以防有人想告诉我我做错了什么:https://drive.google.com/uc?export=download&id=0B_-6KdFaC6WiMmMxU0JaUktUeWs