111,126
社区成员
发帖
与我相关
我的任务
分享private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
{
Image tmp_image = this.imageList1.Images[0]; //声明Image实例,用来指定后面要画的那个图标
Rectangle rect = new Rectangle(); //指明画的矩形对象
if (e.ColumnIndex == 2) //在第三列画
{
switch (e.SubItem.Text)
{
case "大于":
tmp_image = this.imageList1.Images[0];
break;
case "等于":
tmp_image = this.imageList1.Images[1];
break;
case "小于":
tmp_image = this.imageList1.Images[2];
break;
case "不等于":
tmp_image = this.imageList1.Images[3];
break;
}
rect.X = e.Bounds.X;
rect.Y += e.Bounds.Y;
rect.Width = tmp_image.Width;
rect.Height = e.Bounds.Height;
e.Graphics.DrawImage(tmp_image, rect);
}
else
{
e.DrawDefault = true;
}
}这样第三列就不会显示"大于","等于"...这些,而是显示图标了.ListViewItem t=new ListViewItem();
t.Text="aaa";
ListViewItem.ListViewSubItem s=new ListViewItem.ListViewSubItem();
s.Text="22";
t.SubItems.Add(s);
s = new ListViewItem.ListViewSubItem();
s.Text = "大于";
t.SubItems.Add(s);
s = new ListViewItem.ListViewSubItem();
s.Text = "dfddf";
t.SubItems.Add(s);
this.listView1.Items.Add(t);