110,534
社区成员
发帖
与我相关
我的任务
分享
public class MyListView : ListView
{
public MyListView()
{
this.OwnerDraw = true;
this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer, true);
}
protected override void OnDrawItem(DrawListViewItemEventArgs e)
{
base.OnDrawItem(e);
if (View != View.LargeIcon) return;
Graphics g = e.Graphics;
Rectangle rect = Rectangle.Empty;
Image image = LargeImageList.Images[e.Item.ImageIndex];
rect = new Rectangle(e.Bounds.Left, e.Bounds.Top, image.Width, image.Height);
g.DrawImage(image, rect);
if ((e.State & ListViewItemStates.Selected) == ListViewItemStates.Selected)
{
g.DrawRectangle(new Pen(Color.Red, 3), rect);
}
// draw text
}
}