繁体   English   中英

如何使用C#为listview控件中的项添加边框?

[英]How to add border to items in a listview control using C#?

我正在使用listview控件,我通过ImageList添加图像

if (dtPhoto.Rows.Count > 0)
{
foreach (DataRow dr in dtPhoto.Rows)
            {
                if (dr["Photo"].ToString() != "")
                {
                    byte[] barrImg = (byte[])dr["Photo"];
                    MemoryStream mStream = new MemoryStream(barrImg);
                    imageList.Images.Add(Image.FromStream(mStream));
                }
            }
        }

        imageList.ImageSize = new Size(75, 75);
        lvItem.LargeImageList = imageList;

        for (int i = 0; i < imageList.Images.Count; i++)
        {
            lvItem.Items.Add(dtPhoto.Rows[i]["Name"].ToString() + "\n" + "(" + dtPhoto.Rows[i]["Type"].ToString() + ")", i);
        }

我想为Listview中的每个项添加边框是否可能? 请帮忙。 提前致谢。

您可以将ListView的OwnerDraw属性设置为true ,然后处理DrawItem事件并绘制边框,例如:

private void listView1_DrawItem(object sender, DrawListViewItemEventArgs e)
{
    e.DrawDefault = true;
    e.Graphics.DrawRectangle(Pens.Red, e.Bounds);
}

在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM