• c#listview控件的数据添加和常用事件的处理


    设置表格线:

    FullRowSelect=true;

    GridLines=true;

    View=Details;

    用数据表添加数据:

         /// <summary>
                /// ListView控件内容显示
                /// </summary>
                /// <param name="dt">数据表源</param>
                /// <param name="liv">控件名称</param>
                public static void LivMainDisPlay(DataTable dt, ListView liv)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        ListViewItem list = new ListViewItem();
                        for (int j = 0; j < dt.Columns.Count - 1; j++)
                        {
                            list.SubItems[0].Text = dt.Rows[i][0].ToString();
                            list.SubItems.Add(dt.Rows[i][j + 1].ToString());
                        }
                        liv.Items.Add(list);
                    }
                }
                /// <summary>
                /// ListView控件列名显示
                /// </summary>
                /// <param name="dt">数据表源</param>
                /// <param name="liv">控件名称</param>
                public static void LivColumnDisplay(DataTable dt, ListView liv)
                {
                    foreach (DataColumn i in dt.Columns)
                    {
                        liv.Columns.Add(i.ColumnName);
                    }
                    liv.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
                }

    调用顺序如下:

    listview1.Clear();

    LivMainDisPlay(dt,listview1);

    LivColumnDisplay(dt,listview1);

    设置表格鼠标移动背景改变:

        private void lst_ItemMouseHover(object sender, ListViewItemMouseHoverEventArgs e)
                {
                    foreach (ListViewItem item in this.lst.Items)
                    {
                        if(e.Item!=item)
                        item.BackColor = Color.White;
                    }
                    e.Item.BackColor = Color.Red;
                   
                }

    单击某行复制选中文本(复制到系统剪切板):

    private void lst_Click(object sender, EventArgs e)
            {
                int selectCount = lst.SelectedItems.Count;
                if (selectCount > 0)

                {

    System.Windows.Forms.Clipboard.SetText(lst.SelectedItems[0].SubItems[0].Text);
                }
            }

    JAVA&NET技术QQ群号:456257217有问题的可以在群里面提问。
  • 相关阅读:
    git 备查
    PyQt5 信号与槽机制
    Python 循环报错 'int' object is not iterable
    docker instructions命令及dockerfile实践
    shell脚本中set指令
    你知道什么是Python算法和数据结构、抽象数据和面向对象、数组和列表、链表吗?
    Python爬虫抓取B站人类高质量男性求偶视频的弹幕,康康都在讨论什么!❤️
    Python从入门到精通要掌握哪些基础知识?
    想搞个恶作剧吗? 代码丢给他,生死有命富贵在天,看我学会python用代码整蛊朋友
    妹妹画的小恐龙和我用Python画的小恐龙,你更加喜欢谁的!❤️
  • 原文地址:https://www.cnblogs.com/shiyh/p/14791327.html
Copyright © 2020-2023  润新知