slide05-datagridview+listview

29
CÁC ĐIỀU KHIỂN CƠ BẢN CÁC ĐIỀU KHIỂN CƠ BẢN TRONG C# TRONG C#

Upload: nhoc-con

Post on 26-Oct-2014

110 views

Category:

Documents


3 download

DESCRIPTION

DataGridView+ListView

TRANSCRIPT

Page 1: Slide05-DataGridView+ListView

CÁC ĐIỀU KHIỂN CƠ BẢN CÁC ĐIỀU KHIỂN CƠ BẢN TRONG C#TRONG C#

Page 2: Slide05-DataGridView+ListView

DataGridViewDataGridView

1. Chức năng: Hiển thị dữ liệu dưới dạng danh sách

2. Một số thuộc tính thường dùng Columns: Cho phép tùy chỉnh về các cột (Đặt tiêu đề

cho Headers, lựa chọn kiểu cột(Checkbox, Button, Image…))

AutoSizeColumnsMode: Các kiểu lựa chọn với Cột GridColor: DataMember, DataSource: Chọn nguồn và kết nối tới

cơ sở dữ liệu để hiển thị nên DataGridView MultiSelect: Cho phép/Không cho phép chọn nhiều

dòng

Page 3: Slide05-DataGridView+ListView

Một số khái niệmMột số khái niệm

Page 4: Slide05-DataGridView+ListView

Một số khái niệmMột số khái niệm

Page 5: Slide05-DataGridView+ListView

Một số khái niệmMột số khái niệm

Page 6: Slide05-DataGridView+ListView

Một số khái niệmMột số khái niệm

Page 7: Slide05-DataGridView+ListView

Một số khái niệmMột số khái niệm

Page 8: Slide05-DataGridView+ListView

Một số khái niệmMột số khái niệm

Page 9: Slide05-DataGridView+ListView

↔ Mảng 2 chiều

Trong đó:

Cột: Chiều thứ nhất

Hàng: chiều thứ 2

Page 10: Slide05-DataGridView+ListView

→ Có 2 cách để truy xuất đến một ô (để lấy giá trị) trong DataGridView (các bạn chú ý hai câu lệnh này)

Tên_DataGridView[Chỉ_số_cột, Chỉ_số_hàng].Value

≡Tên_DataGridView.Rows[Chỉ_số_hàng].Cells[Chỉ_số_Cột].Value

Page 11: Slide05-DataGridView+ListView

Một số thao tác với DataGridViewMột số thao tác với DataGridView

1. Thiết lập số hàng, số cột và đặt kích thước cho hàng và cột

dataGridView1.ColumnCount = 50; dataGridView1.RowCount = 50;

//Đặt độ rộng cho Hàng và Cột

for (int i = 0; i < 50; i++)

{

dataGridView1.Columns[i].Width = 15;

dataGridView1.Rows[i].Height = 15;

}

Page 12: Slide05-DataGridView+ListView

Một số thao tác với DataGridViewMột số thao tác với DataGridView

2. Lấy về số hàng và cột của một DataGridView

//Lấy về số hàng và số cột

int i = dataGridView1.Rows.Count;

int j = dataGridView1.Columns.Count;

string HC = i.ToString() + j.ToString();

MessageBox.Show(HC);

Page 13: Slide05-DataGridView+ListView

Một số thao tác với DataGridViewMột số thao tác với DataGridView

3. Truy xuất đến một ô

Cách 1:Set: Tên_Dg[Cột, Hàng].Value=Giá_trị;

Get: String str=Tên_Dg[Cột, Hàng].Value.ToString();

Cách 2:

Tên_dg.Rows[Hàng].Cells[Cột];

Page 14: Slide05-DataGridView+ListView

Một số thao tác với DataGridViewMột số thao tác với DataGridView

4. Xóa Hàng và Cột//Xóa một hàng tại vị trí xác định (Xóa hàng thứ 2--Có chỉ số là 1)

dataGridView1.Rows.RemoveAt(1);

//Xóa tất cả các hàng

dataGridView1.Rows.Clear();

//Xóa các cột => Xóa hết cả DataGridView

dataGridView1.Columns.Clear();

//2 câu lệng trên ↔ một câu lệnh

dataGridView1.Clear();

Page 15: Slide05-DataGridView+ListView

• Viết chương trình quản lý sinh viên: Text + DataGridView

Bài tập 1Bài tập 1

Page 16: Slide05-DataGridView+ListView

Bài tập 2Bài tập 2

Yêu cầu:Yêu cầu:

- Add 5 mã SV (M01..M05 vào Combobox).

- Nếu chọn M01 thì điền các thông tin vào dòng 1: Trần Văn Khẩu, TK6SE,29-03-1988, Hưng Yên vào dòng 1

Page 17: Slide05-DataGridView+ListView

Bài tập 2Bài tập 2

Page 18: Slide05-DataGridView+ListView

1. Chức năng: Hiển thị các mục dữ liệu dưới dạng danh sách

2. Một số thuộc tính thường dùng Columns: Quản lý (thêm/bớt) các cột của listview Items: Là một tập hợp quản lý toàn bộ các mục trong

danh sách GridLines: Xuất hiện lưới giữa các hàng và cột FullRowSelect: MultiSelect: CheckBoxes: Xuất hiện checkbxox trước mỗi hàng

(Vị trí đầu tiên của mỗi hàng) LabelEdit: SelectedItems: Quản lý các mục đang được chọn CheckedItems: Trả về danh sách các phần tử được

check ………………………………………………

ListViewListView

Page 19: Slide05-DataGridView+ListView

3. Sự kiện SelectedIndexChanged: Khi người sử dụng thay

đổi phần tử chọn trong Listview ItemChecked: Khi Check vào biểu tượng

Checkbox của mỗi phần tử trên điều khiển ListView

ItemSelectionChanged …………………………………….

ListViewListView

Page 20: Slide05-DataGridView+ListView

ListViewListView

Page 21: Slide05-DataGridView+ListView

ListViewListView

Cột - Columns

Page 22: Slide05-DataGridView+ListView

ListViewListView

Text

Page 23: Slide05-DataGridView+ListView

ListViewListView

1 ListViewItem

1 Hàng = 1 ListViewItem

Page 24: Slide05-DataGridView+ListView

ListViewListView

Subitems[0] Subitems[1] → 1 ô = 1 Subitems

Page 25: Slide05-DataGridView+ListView

Minh họa ListViewMinh họa ListView

Giả sử có một ListView có tên là LV (View=Detail)

Bước 1: Chưa làm gì

Bước 2: Thêm cột vào LV

LV.Columns.Add(“Name“); //HoặcColumnHeader ch = new ColumnHeader("clName");ch.Text = "Name";LV.Columns.Add(ch);

Name

Page 26: Slide05-DataGridView+ListView

Minh họa ListViewMinh họa ListView

Bước 3: Thêm cột thứ 2 vào LV

LV.Columns.Add(“Size“);

//HoặcColumnHeader ch = new ColumnHeader("clSize");ch.Text = “Size";LV.Columns.Add(ch);

Name Size

Bước 4: Tạo hàng mới (chưa có giá trị)

ListViewItem lvi = new ListViewItem();

Page 27: Slide05-DataGridView+ListView

Minh họa ListViewMinh họa ListView

Bước 5: Add giá trị vào hàng mới vừa tạo ra

lvi.SubItems.Add(“TK4.doc”);

Bước 7: Add hàng vào ListView

LV.Items.Add(lvi);

Bước 6: Add giá trị vào hàng mới vừa tạo ra

lvi.SubItems.Add(“30KB”); TK4.doc 30KB

TK4.doc

Name SizeTK4.doc 30KB

Page 28: Slide05-DataGridView+ListView

Một số thao tác trên ListViewMột số thao tác trên ListView

1. Giả sử có một điều khiển có tên: listView1

2. Duyệt xem các hàng nào được Check

foreach (ListViewItem lvi in listView1.CheckedItems)

{

MessageBox.Show(lvi.SubItems[1].Text.ToString());

}

Page 29: Slide05-DataGridView+ListView

Một số thao tác trên ListViewMột số thao tác trên ListView

3. Duyệt một hàng được chọnListViewItem lvi = listView1.FocusedItem; MessageBox.Show(lvi.SubItems[1].Text);

4. Duyệt nhiều hàng được chọn foreach (ListViewItem str in listView1.SelectedItems) { MessageBox.Show(str.SubItems[1].Text); }