网上好多代码都实现不了,一运行就变成了底色,自己摸索了哈,很简单。
先将OwnerDraw设为True。然后写下面代码。
        /// <summary>
        /// 绘制隔行颜色
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
        {
            if(e.Item.Selected)
            {
                SolidBrush brush = new SolidBrush(Color.FromArgb(204,213,240));
                e.Graphics.FillRectangle(brush, e.Bounds);    //选择后的颜色
            }
            else
            {
                if (e.ItemIndex % 2 == 0)
                    e.Graphics.FillRectangle(Brushes.White, e.Bounds);     //间隔色
                else
                    e.Graphics.FillRectangle(Brushes.WhiteSmoke, e.Bounds);
            }
            e.DrawText(TextFormatFlags.Default);
        }










