LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C#中ListView的簡單使用方法

admin
2021年3月8日 11:14 本文熱度 3715

ListView是用于顯示數(shù)據(jù)的,先在窗體中拉一個lisview控件,還有一些新增、修改、刪除、查詢按鈕和文本框,控件名稱為listview,按鈕為btnInsert,btnUpate,btnDeleteOne,btnDelete,btnSelect,文本框的名稱為txtName,txtSex,txtPhone,txtAddress,設(shè)計如下圖所示:


寫完這些后,先設(shè)置listView的一些屬性和列標頭,如圖所示


具體代碼如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace TestGame
{
    public partial class ListViewForm : Form
    {
        public ListViewForm()
        {
            InitializeComponent();
        }
        /// <summary>
        /// 窗體加載時調(diào)用初始化的Listview方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ListViewForm_Load(object sender, EventArgs e)
        {
            InitListView(this.listView);
        }
        /// <summary>
        /// 當點擊新增時調(diào)用的方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnInsert_Click(object sender, EventArgs e)
        {
            InsertListView(this.listView);
                     
        }
        /// <summary>
        /// 當點擊修改時調(diào)用的方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            UpdateListView(this.listView);
        }
        /// <summary>
        /// 新增方法
        /// </summary>
        /// <param name="lv"></param>
        /// <returns></returns>
        public ListView InsertListView(ListView lv) {
            //獲取文本框中的值
            string name = this.txtName.Text;
            string sex = this.txtSex.Text;
            string phone = this.txtPhone.Text;
            string address = this.txtAddress.Text;
            //創(chuàng)建行對象
            ListViewItem li = new ListViewItem(name);
            //添加同一行的數(shù)據(jù)
            li.SubItems.Add(sex);
            li.SubItems.Add(phone);
            li.SubItems.Add(address);
            //將行對象綁定在listview對象中
            lv.Items.Add(li);

    MessageBox.Show("新增數(shù)據(jù)成功!");
            return lv;
        }
       
        /// <summary>
        /// 初始化ListView的方法
        /// </summary>
        /// <param name="lv"></param>
        public void InitListView(ListView lv) {
            //添加列名
            ColumnHeader c1 = new ColumnHeader();
            c1.Width = 100;
            c1.Text = "姓名";
            ColumnHeader c2 = new ColumnHeader();
            c2.Width = 100;
            c2.Text = "性別";
            ColumnHeader c3 = new ColumnHeader();
            c3.Width = 100;
            c3.Text = "電話";
            //設(shè)置屬性
            lv.GridLines = true;  //顯示網(wǎng)格線
            lv.FullRowSelect = true;  //顯示全行
            lv.MultiSelect = false;  //設(shè)置只能單選
            lv.View = View.Details;  //設(shè)置顯示模式為詳細
            lv.HoverSelection = true;  //當鼠標停留數(shù)秒后自動選擇
            //把列名添加到listview中
            lv.Columns.Add(c1);
            lv.Columns.Add(c2);
            lv.Columns.Add(c3);
            lv.Columns.Add("籍貫", 100);  //相當于上面的添加列名的步驟
        }
        
        /// <summary>
        /// 修改的方法
        /// </summary>
        /// <param name="lv"></param>
        /// <returns></returns>
        public ListView UpdateListView(ListView lv){
            if (lv.SelectedItems.Count > 0) {

      //把修改后的文本框內(nèi)容添加到listview中
                lv.SelectedItems[0].SubItems[0].Text = this.txtName.Text;
                lv.SelectedItems[0].SubItems[1].Text = this.txtSex.Text;
                lv.SelectedItems[0].SubItems[2].Text = this.txtPhone.Text;
                lv.SelectedItems[0].SubItems[3].Text = this.txtAddress.Text;
                MessageBox.Show("修改數(shù)據(jù)成功!");
            }
            return lv;
        }
       
        /// <summary>
        /// 當listview選中狀態(tài)改變時調(diào)用的方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void listView_SelectedIndexChanged(object sender, EventArgs e)
        {

    //當有選擇行的數(shù)據(jù)時
            if (this.listView.SelectedItems.Count > 0) {

      //把選擇的信息顯示在相應(yīng)的文本框中
                this.txtName.Text = this.listView.SelectedItems[0].SubItems[0].Text;
                this.txtSex.Text = this.listView.SelectedItems[0].SubItems[1].Text;
                this.txtPhone.Text = this.listView.SelectedItems[0].SubItems[2].Text;
                this.txtAddress.Text = this.listView.SelectedItems[0].SubItems[3].Text;
            }
        }
       
        /// <summary>
        /// 移除選中行的方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDeleteOne_Click(object sender, EventArgs e)
        {
            if (this.listView.SelectedItems.Count > 0) {
                //移除整一行
                this.listView.SelectedItems[0].Remove();
            }
        }
       
        /// <summary>
        /// 移除所有行的方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDeleteAll_Click(object sender, EventArgs e)
        {    
                //清空整個listview中的行
                this.listView.Items.Clear();
        }


        private void btnSelect_Click(object sender, EventArgs e)
        {
            SelectListView(this.listView);
        }

        public void SelectListView(ListView lv) {
            //列表有數(shù)據(jù)
            if (lv.Items.Count > 0)
            {
                foreach (ListViewItem li in lv.Items)
                {
                    if (li.SubItems[0].Text == this.txtExitName.Text)
                    {
                        MessageBox.Show("存在該名稱");
                        return;
                    }
                }
                MessageBox.Show("沒有找到該姓名");
            }
            else {
                MessageBox.Show("未輸入列表數(shù)據(jù)");
            }
        }
    }
}

最后運行效果是這樣的,這是新增數(shù)據(jù)時的效果


這是修改數(shù)據(jù)后的效果:


這是查詢是否存在這個名字的效果:


刪除選中行和刪除全部就不顯示出來了。


該文章在 2021/3/8 11:14:59 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
夜夜爽一区二区三区 | 在线观看不卡免费视频 | 亚洲三级在线观看 | 午夜免费一区二区三区最新 | 日韩欧美视频在线 | 无遮挡国产精品网站 |