Trong chỉ dẫn này mình vẫn giới thiệu các bạn một trong các điều khiển đặc biệt quan trọng tiếp theo đó đó là ListView. Đây là một điều khiển vô cùng quan trong bởi nó có thể hiển thị các đối tượng người sử dụng một cách đa dạng.

Bạn đang xem: Cách dùng listview trong c#

*


*

Chúng ta sẽ thuộc nhau mày mò về tính năng của nó tương tự như các ở trong tính cùng phương thức, sự khiếu nại của ListView. Tiếp đến mình sẽ tiến hành viết một chương trình vận dụng ListView, chúng ta cùng theo dõi và quan sát nhé.

1. ListView

ListView là điều khiển được cho phép hiển thị danh sách các đối tượng. Mỗi đối tượng người tiêu dùng hiển thị vào ListView được hotline là Item.

Item là đối tượng người dùng được sản xuất từ lớp ListViewItem. Mỗi Item bao gồm thuộc tính Text là chuỗi cam kết tuej hiển thị ở cột trước tiên trong ListView, mỗi cửa nhà có những SubItem hiển thị ở những cột tiếp theo trong ListView.

Một số ở trong tính hay được sử dụng của ListView:

Bài viết này được đăng tại

Thuộc tínhMô tả
ViewThuộc tính View quy định phương pháp hiển thị những Item trong ListView. ở trong tính View gồm 5 giá bán trị: Detail, LargeIcons, List, SmallIcons, Titles
MultiSelectTrue/ False: chất nhận được hoặc không cho phép chọn một lúc những Item vào ListView
FullRowSelectFullRowSelect khi chọn dòng tài liệu hightlighted cả dòng hay chỉ ô được chọn
GridLinesGridLines ví như thiết lâp True đã hiển thị các dòng cùng cột dạng lưới, cấu hình thiết lập False không hiển thị dạng lưới
SelectedItemsTrả về tập những Items được lựa chọn trong ListView
LargeImageIconGán đối tượng người sử dụng ImageList mang đến ListView
SmallImageIconGán đối tượng người tiêu dùng ImageList mang đến ListView
FocusedItem.IndexTrả về chỉ số dòng được chọn trong ListView
SelectedIndices.CountTrả về số lượng Item được chọn trong ListView
SelectedIndicesTrả về list chỉ mục các Item được chọn
Items

Trả về những Item đựng trong ListView. Một vài phương thức cùng thuộc tính thường được sử dụng của ListView.

Count: Đếm con số Item trong LInsert(i, ): Chèn thêm Item bắt đầu vào vị trí i trong ListViewAdd(): Thêm Item vào cuối ListViewRemove(): Xóa sản phẩm khỏi ListViewRemoveAt(i): Xóa Item tất cả chỉ số i ngoài ListViewContains(): Trả về True giả dụ tìm thấy trong ListView, trả về False nếu không tồn tại trong ListViewIndexOf(): Nếu gồm trong ListView thì trả về chỉ số của vật phẩm tìm thấy vào ListView, nếu không kiếm thấy đang trả về -1

Một số phương thức thường dùng của ListView:

Phương thứcMô tả
Clear()Xóa toàn bộ các tòa tháp và Column trong ListView
Sort()Sắp xếp các Item trong ListView
GetItemAt(x, y)Lấy nhà cửa tại địa chỉ tọa độ x với y (x với y có thể lấy được trải qua sự kiện Click chuột)

Một số sự kiện hay sử dụng của ListView:

Sự kiệnMô tả
SelectedIndexChangedSự kiện phát sinh khi gồm sự thay đổi về chỉ mục được chọn của vật phẩm trên ListView
ItemSelectionChangedSự kiện tạo ra khi gồm sự biến đổi lựa lựa chọn một Item trên ListView
ItemCheckXảy ra khi trạng thái lựa chọn của Item cầm cố đổi
ColumnClickSự kiện gây ra khi gồm sự chuyển đổi lựa chọn một Item trên ListView
MouseClickSự kiện gây ra khi bấm chuột chọn một sản phẩm trong ListView

2. Ví dụ như sử dụng tinh chỉnh và điều khiển ListView

Trong ví dụ như này mình sẽ tiến hành viết một chương trình áp dụng ListView và các thuộc tính cũng tương tự các sự khiếu nại của nó. Rõ ràng sẽ tạo hình ảnh cho khung giống dưới đây, sau đó viết các sự kiện theo yêu thương cầu.

Yêu cầu:

Button "Thêm": Khi người tiêu dùng nhập ngừng tên ban ngành và con số nhân viên, tiếp nối nhấn nút Button "Thêm" thì vào ListView vẫn chèn một dòng vào cuối với tên phòng ban và số lượng vừa nhập.Button "Xóa": Khi người dùng chọn vào tên phòng ban cần xóa cùng nhấn nút xóa thì sẽ xóa cơ sở vừa chọn trong ListView.Button "Xóa hết": Khi người tiêu dùng chọn vào Button vẫn xóa toàn bộ các vật phẩm trong ListView.Button "Thoát": thông báo "Bạn cũng muốn thoát?" chứng thực người dùng ước ao đóng size hiện hành, nếu chọn Yes thì hoàn thành chương trình thực thi, nếu chọn No thì hủy vứt lệnh kết thúc.

Bây giờ họ sẽ bắt đầu tạo bối cảnh cho Form, ví dụ sẽ buộc phải các tinh chỉnh và điều khiển sau:

3 Label để hiển thị câu chữ tương ứng.2 TextBox để nhập nội dung nên thêm.1 ListBox nhằm hiển thị thông tin.4 Button cùng với 4 sự kiện không giống nhau.

Sau lúc tạo kết thúc giao diện mang đến Form, ta bắt đầu viết sự kiện cho các Button.

Bước 1: xử trí sự kiện cho nút Button "Thêm", lúc Click vào Button thì văn bản trong ô TextBox sẽ tiến hành đưa vào trong ListBox thuộc với các điều khiếu nại ràng buộc khác.

Xem thêm: Top 8 Mũ Bảo Hiểm 3/4 Nữ - Top 8 Mũ Bảo Hiểm 3/4 Tốt Nhất Hiện Nay 2022

Ta sẽ sử dụng string.IsNullOrEmpty() nhằm xét sự khiếu nại trong trường hợp một trong những hai ô TextBox không tồn tại dữ liệu thì sẽ thông báo cho tất cả những người dùng biết.

Tiếp mang đến ta tạo mới một ListViewItem, tiếp đến sử dụng thuộc tính Items.Add() để thêm ngôn từ từ ô TextBox và sử dụng SubItems.Add() để cung cấp cột tương ứng.

Sau lúc thêm ta buộc phải xóa câu chữ trong ô TextBox đang nhập bằng phương pháp sử dụng trực thuộc tính Clear().


private void btnThem_Click(object sender, EventArgs e) if ((string.IsNullOrEmpty(txtTenphong.Text))
Kết quả: Khi nhấn vào Button "Thêm".

Bước 2: cách xử lý sự kiện đến Button "Xóa", khi lựa chọn 1 Item và Click vào Button thì Item này sẽ được xóa khỏi ListView. Trước lúc xóa đã hiển thị vỏ hộp thoại hỏi tín đồ dùng cũng muốn xóa tuyệt không?

Ta sử dụng SelectedItems.Count để xét đk nếu tồn tại nhà cửa trong ListView thì ta mới tiến hành xóa, trái lại nếu ListView rỗng thì thông báo cho người dùng biết.

Tiếp đến ta áp dụng thuộc tính Items.Remove() để xóa bộ phận khỏi ListView.


private void btnXoa_Click(object sender, EventArgs e) if (listView1.SelectedItems.Count > 0) DialogResult dl = MessageBox.Show("Bạn ước ao xóa", "canh bao", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (dl == DialogResult.OK) listView1.Items.Remove(listView1.SelectedItems<0>); else MessageBox.Show("Xóa lỗi");
Kết quả: Khi bấm vào Button "Xóa".

Bước 3: xử trí sự kiện cho Button "Xóa hết", so với Button này thì khá đơn giản và dễ dàng vì trong ListView tất cả thuộc tính triển khai việc này khá thuận lợi đó đó là thuộc tính Clear().


Bước 4: giải pháp xử lý sự kiện mang đến Button "Thoát", giống như như các bài trước mình đã thực hiện, ta sẽ sử dụng MessageBox để hỏi tín đồ dùng vẫn muốn thoát giỏi không, ví như Yes thì thực hiện Application.Exit() nhằm thoát, ngược lại chọn No thì hủy vứt lệnh.

Kết quả: khi nhấn Button "Thoát".

Full Code:


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 cau2 public partial class Form1 : form public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) private void btnThem_Click(object sender, EventArgs e) (string.IsNullOrEmpty(txtSoluong.Text))) MessageBox.Show("Vui lòng điền đủ thông tin"); else ListViewItem chiến thắng = new ListViewItem(); item.Text = txtTenphong.Text; listView1.Items.Add(item); ListViewItem.ListViewSubItem subitem = new ListViewItem.ListViewSubItem(item, (txtSoluong.Text)); item.SubItems.Add(subitem); txtTenphong.Clear(); txtSoluong.Clear(); txtTenphong.Focus(); private void btnXoa_Click(object sender, EventArgs e) if (listView1.SelectedItems.Count > 0) DialogResult dl = MessageBox.Show("Bạn hy vọng xóa", "canh bao", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (dl == DialogResult.OK) listView1.Items.Remove(listView1.SelectedItems<0>); else MessageBox.Show("Xóa lỗi"); private void btnXoahet_Click(object sender, EventArgs e) listView1.Items.Clear(); private void btnthoat_Click(object sender, EventArgs e) Application.Exit();

3. Kết luận

Như vậy là bọn họ đã cùng nhau khám phá về ListView là gì? tác dụng cũng như những thuộc tính với phương thức, sự khiếu nại của nó. Đây là 1 trong những điều khiển được sử dụng không hề ít trong việc làm chủ dữ liệu, vì chưng vậy chúng ta hãy rèn luyện thật nhiều để hoàn toàn có thể thành thào nó nhé. Ở bài tiếp theo sau mình vẫn giới thiệu các bạn một điều khiển cũng được dùng để thống trị dữ liệu đó chính là TreeView, chúng ta chú ý theo dõi và quan sát nhé !!!