1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu công nghệ Net Phần 3

24 569 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 446,92 KB

Nội dung

GV: Hoàng Quốc ViệtPath Đường dẫn cần theo dõi có thể là ổ đĩa hay một thư mục kết hợp sử dụng với điều khiển FolderBrowserDialog để theo dõi sự thay đổi của một folder bất kì do bạn ch

Trang 1

GV: Hoàng Quốc Việt

Path Đường dẫn cần theo dõi (có thể là ổ đĩa hay một thư mục) (kết hợp

sử dụng với điều khiển FolderBrowserDialog để theo dõi sự thay đổi của một folder bất kì do bạn chọn)

Filter Bộ lọc loại tập tin (theo dõi sự thay đổi của các file Text, file doc hay

tất cả các file)

EnableRaisingEvents Nhận một trong hai giá trị True hay False

- True: Cho phép các sự kiện có hiệu lực khi có thay đổi không

(thường chọn là true)

- False: ngược lại

IncludeSubdirectories Nhận một trong hai giá trị True hay False

- True: Theo dõi sự thay đổi của cả các thư mục con của thư mục bạn chọn

- False: Ngược lại (tất nhiên rồi ☻) NotifyFilter Bộ lọc đối với sự kiện Changed (thay đổi về tên, thuộc tính file, thời

4 Minh họa sử dụng điều khiển FileSystemWatcher

Giả sử chúng ta có form có tên: frmFileSystemWatcher Trên form đó có chứa: điều khiển FolderBrowserDilog có tên folderBrowserDialog1 để chọn

thư mục bất kì cần theo dõi, điều khiển FileSystemWatcher có tên

fileSystemWatcher1, một listbox có tên lstFileSystemWatcher (mỗi khi có sự

thay đổi thì dòng thông báo được thêm vào Listbox này) và một Button có tên

btSelect để chọn thư mục cần theo dõi.

→ XEM CODE TRONG PROJECT KÈM THEO (frmFileSystemWatcher)

Trang 2

//Chọn thư mục cần theo dõi

privatevoid btSelect_Click(object sender, EventArgs e)

{

if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)

{

string strFolderCanTheoDoi = folderBrowserDialog1.SelectedPath;

//Đường dẫn cần theo dõi

//Bộ lọc đối với sự kiện Changed

fileSystemWatcher1.NotifyFilter = NotifyFilters.Attributes | NotifyFilters.CreationTime | NotifyFilters.DirectoryName |

NotifyFilters.FileName | NotifyFilters.Size;

//Xử lý các sự kiện

//Nếu thuộc tính EnableRaisingEvents=False thì các câu lệnh này không có hiệu lực

fileSystemWatcher1.Created += newFileSystemEventHandler(CreatedFileAndFolder);

fileSystemWatcher1.Deleted += newFileSystemEventHandler(Delete);

fileSystemWatcher1.Changed += newFileSystemEventHandler(Changed);

fileSystemWatcher1.Renamed += newRenamedEventHandler(Renamed);

Trang 3

GV: Hoàng Quốc Việt

publicvoid CreatedFileAndFolder(object sender, FileSystemEventArgs e)

{

lstFileSystemWatcher.Items.Add("Create: " + e.FullPath + "Vừa được tạo ra");

}

//Phương thức thực thi khi có file hay folder được Xóa đi

publicvoid Delete(object sender, FileSystemEventArgs e)

{

lstFileSystemWatcher.Items.Add("Delete: " + e.FullPath + "Vừa được Xóa đi");

}

//Phương thức thực thi khi có file hay folder thay đổi nội dung

publicvoid Changed(object sender, FileSystemEventArgs e)

{

lstFileSystemWatcher.Items.Add("Changed: " + e.FullPath + " Vừa mới thay đổi!");

}

//Phương thức thực thi khi có file hay folder thay đổi tên

publicvoid Renamed(object sender, RenamedEventArgs e)

Trang 4

2 Một số thuộc tính thường dùng

Active Nhận một trong hai giá trị True hay False

- True: Cho phép cửa sổ Tooltip được xuất hiện

- False: Không cho phép BackColor Chọn mầu nền cho cửa sổ Tooltip (chính là khung hình chữ nhật hiện

ra) AutomaticDelay Thời gian tính bằng phần ngàn giây áp dụng cho 3 thuộc tính ở dưới

đây: AutoPopDelay, InitiaDelay, ReshowDelay

AutoPopDelay Khoảng thời gian mà cửa sổ điều khiển tooltip xuất hiện kể từ lúc

người dùng di chuyển chuột vào điều khiển cho đến khi kết thúc (1000=1s) (Nói gắn gọn: Khoảng thời gian mà nó sẽ được xuất

hiện khi người dùng di chuyển chuột vào điều khiển)

InitialDelay Khoảng thời gian mà cửa sổ điều khiển tooltip sẽ chờ để được

xuất hiện kể từ khi người dùng di chuyển chuột vào điều khiển (Ví

dụ đặt thuộc tính là 1000 thì sau khi di chuyển chuyển vào điều khiển 1s thì cửa sổ tooltip sẽ xuất hiện)

ReshowDelay Khoảng hời gian mà cửa sổ sẽ tắt kể từ khi người dùng di chuyển

chuột ra ngoài điều khiển IsBalloon Nhận một trong hai giá trị True hay False

- True: Cửa sổ hình chữ nhật bật nên với các góc bo tròn

- False: Cửa sổ hiện nên có hình chữ nhật TooltipIcon Biểu tượng xuất hiện trên hộp Tooltip

TooltipTitle Chuỗi xuất hiện bên cạnh Icon ở trên(Không phải là Tooltip)

3 Sử dụng điều khiển Tooltip

Khi kéo một điều khiển Tooltip vào Form thì mặc định tên của nó là: toolTip1 Khi đó

các điều khiển trên Form (Textbox, Button hay Label… ) tự động có thêm một thuộc tính

nữa là: Tooltip on Tooltip1 (Với Tooltip1 là tên của điều khiển vừa đưa vào - Thuộc tính

mới này nằm trong hộp thoại Properties).Bạn chỉ cần đặt giá trị cho thuộc tính này (thuộc

tính Tooltip on Tooltip1 của các điều khiển như Textbox, Button…chứ không phải của

tooltip) là một chuỗi gợi nhắc nào đó Lúc chạy chương trình khi trỏ chuột vào điều khiển

đó hiện nên thông báo (Chuỗi vừa nhập ở thuộc tính Tooltip on Tooltip1)

Trang 5

GV: Hoàng Quốc Việt

BlinkRate Khoảng thời gian giữa hai lần nhấp nháy (1000=1s)

BlinkStyle Chọn kiểu hiển thị cho điều khiển ErrorProvider Nhận 1 trong 3 giá

trị:

- Khi có lỗi mới nhấp nháy (BlinkIfDifferentError - mặc định).

- Nhấp nháy liên tục (AlwaysBlink),

- Không bao giờ nhấp nháy (NeverBlink).

Icon Icon xuất hiện bên cạnh điều khiển, có thể chọn Icon bất kì trên máy

tính của bạn chứ không nhất thiết là Icon mặc định của VS (hình tròn đỏ)

SetError Khai báo chuỗi xuất hiện tương tự như thuộc tính Error on

errorProvider1.

GetError Nhận chuỗi từ thuộc tính Error on errorProvider1 của điều khiển.

Clear Loại bỏ tất cả các chuỗi diển giải cho các điều khiển

4 Sử dụng điều khiển ErrorProvider

Khi kéo một điều khiển ErrorProvider vào Form thì mặc định tên của nó là:

errorProvider1 Khi đó các điều khiển trên Form (Textbox, Button hay

Label… ) tự động có thêm một thuộc tính nữa là: Error on errorProvider1 (Với errorProvider1 là tên của điều khiển Error Provider vừa đưa vào - Thuộc

tính mới này nằm trong hộp thoại Properties). Bạn chỉ cần đặt giá trị cho

thuộc tính này là một chuỗi nào đó (thuộc tính Error on errorProvider1 của

các điều khiển như Textbox, Button…chứ không phải của điều khiển ErrorProvider) Lúc chạy chương trình thì có một biểu tượng hình tròn đỏ bên

cạnh điều khiển mà bạn đặt thuộc tính Error on errorProvider1, khi trỏ vào đó

sẽ xuất hiện dòng thông báo trên).

Ví dụ: Chúng ta có một form: frmErrorProvider Trên form có 2 điều khiển

Textbox có tên là: txtUser, txtPass và một button có tên btLogin Khia nhấn vào nút btLogin nếu giá trị của 2 ô txtUser và txtPass để trống (“”) thì xuất

hiện điều điều khiển ErrorProvider bên cạnh các điều khiển này

Trang 6

privatevoid btLogin_Click(object sender, EventArgs e)

{

//Chúng ta có thể kéo một điều khiển ErrorProvider vào form và đặt các thuộc tính

//Cho các điều khiển txtUser, txtPass và điều khiển ErrorProvider bạn vừa tạo ra

//Ở đây khai báo đối tượng ErrorProvider bằng code

//Khai báo đối tượng thuộc kiểu ErrorProvider

ErrorProvider ep = newErrorProvider();

//Đặt các thuộc tính

ep.Clear();

ep.BlinkRate = 300;

ep.BlinkStyle = ErrorBlinkStyle.BlinkIfDifferentError;

//Đặt cho một một điều khiển (Textbox) sử dụng phương thức SetError

Trang 7

GV: Hoàng Quốc Việt

Maximum Giới hạn trên (cực đại) của điều khiển ProgressBar

Minimum Giới hạn dưới (cực tiểu) của điều khiển ProgressBar

Value Giá trị hiện hành đang xử lý trên điều khiển ProgressBar

Style Kiểu trình bày của ProgressBar và nhận 1 trong 3 giá trị:

- Blocks: Tô từng khối (các khối có cách nhau) màu xanh từ trái qua phải

- Continuous: Tô màu xanh (liền nhau) từ trái qua phải

- Marquee: Cuộn màu xanh chạy từ trái qua phải

3. Ví dụ đơn giản về ProgressBar

Giả sử chúng ta có form: frmProgresBar Trên form có một điều khiển ProgressBar có tên progressBar1, một điều khiển timer có tên timer1 và một label có tên là label1 Chúng ta minh họa sử dụng ProgressBar qua ví dụ đơn

//Sự kiện Tick của Timer

privatevoid timer1_Tick(object sender, EventArgs e)

Trang 8

CheckBoxes Nhận một trong hai giá trị True hay False (mặc định là False)

- True: Hiển thị một checkbox bên cạnh phần tử đầu tiên của mỗi

hàng (1 hàng = 1 ListviewItem) trong Listview

- False: Ngược lại

Columns Tập các cột trong ListView là một Collection Thông qua thuộc tính này

có thể thêm các cột vào Listview (Có thể thêm các cột vào Listview thông qua giao diện đồ họa hay có thể viết Code Chú ý: Phải đặt thuộc

tính View là Detail thì bạn mới có thể nhìn thấy các cột này)

ContextMenuStrip Gắn một menu ngữ cảnh với điều khiển ListView (khi nhấn chuột phải

vào Listview thì sẽ hiển thị menu này) FullRowSelect Nhận một trong hai giá trị True hay False

- True: Cho phép chọn (bôi đen) cả hàng (của phần tử đang được chọn Chú ý: Thuộc tính View = Detail)

- False: Ngược lại GridLines Nhận một trong hai giá trị True hay False

- True: Hiển thị lưới bao quanh và ngăn cách các hàng (Chỉ có hiệu lực nếu thuộc tính View = Detail)

- False: Ngược lại

Group Khai báo nhóm để phân loại các phần tử sau khi trình bày trên điều

khiển Listview HeaderStyle Đây là thuộc tính cho phép chọn Style cho Listview trong chế độ View là

Report

Items Là một Collection Cho phép tạo ra các giá trị cho các hàng, cột trong

Listview (tất nhiên có thể dùng giao diện đồ họa hay viết Code)

LabelEdit Nhận một trong hai giá trị True hay False

- True: Cho phép thay đổi (sửa) Text của các phần tử (các Ô).

- False: Ngược lại LabelWap Nhận một trong hai giá trị True hay False

- True: Chuỗi §HSPKTHYẽ tự động xuống hàng khi chiều dài không

đủ để trình bày

- False: Ngược lại MultiSelect Nhận một trong hai giá trị True hay False

- True: Cho phép chọn nhiều hàng (ListviewItem) Mặc định là True

- False: Không cho phép chọn nhiều hàng LargeImageList Đối tượng ImageList chứa danh sách các Image theo chỉ số (Index) từ

0 đến n-1 Được sử dụng nếu thuộc tính View là LargeIcon

SmallImageList Đối tượng ImageList chứa danh sách các Image theo chỉ số (index) từ

0 đến n-1 Được sử dụng nếu thuộc tính View là SmallIcon

Scrollable Nhận một trong hai giá trị True hay False

- True: Cho phép xuất hiện thanh trượt trong Listview (Khi số ListViewItem nhiều và vượt qua chiều cao của ListView)

- False: Ngược lại Sorting Sắp xếp giá trị các hàng (ListViewItem) trong ListView (Chỉ có hiệu lực

nếu thuộc tính View là Detail) Thuộc tính này nhận một trong các giá trị sau

• None: Không Sắp xếp

• Ascending: Sắp xếp tăng

• Descending: Sắp xếp giảm

SelectedItems Trả về danh sách các phần tử được chọn (bôi đen)

CheckedItems Trả về danh sách các phần tử được check (tất nhiên thuộc tính

Trang 9

GV: Hoàng Quốc Việt

RemoveAt Xóa bỏ một cột có chỉ số (ở vị trí) nào đó

5. Một số khái niệm liên quan đến ListView

Hình 1: Minh họa về ListView

Trang 10

Hình 2: Cột trong ListView

Hình 3: Khái niệm ColumnHeader

Trang 11

GV: Hoàng Quốc Việt

Hình 4: Khái niệm ListViewItem

Hình 5: Khái niệm SubItems

Trang 12

Hình 6: Minh họa về Group

6. Minh họa ListView

Giả sử chúng ta có một điều khiển ListView có tên là LV (thuộc tính Name=LV), và cóthuộc tính View=Detail

Chúng ta minh họa ListView qua một số bước sau:

Bước 1: ListView khi chưa làm gì.

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

LV.Columns.Add( "Name" ,100, HorizontalAlignment Left);

//Hoặc 3 câu lệnh dưới đây

//ColumnHeader ch = new ColumnHeader("clName");

//ch.Text = "Name";

//LV.Columns.Add(ch);

Trang 13

GV: Hoàng Quốc Việt

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

LV.Columns.Add( "Size" ,100, HorizontalAlignment Left);

//Hoặc 3 câu lệnh dưới đây

//ColumnHeader ch = new ColumnHeader("clSize");

////Hoặc sử dụng 3 câu lệnh sau

//string[] HangMoi = new string[] { "TK4.doc", "30Kb" };

//ListViewItem lvi = new ListViewItem(Them);

//LV.Items.Add(lvi);

Trang 15

GV: Hoàng Quốc Việt

7. Sử dụng điều khiển ListView qua một số Code

8. Giả sử chúng ta có một form có tên: frmListView Trên đó có chứa một số điều

khiển sau:

Điều khiển ListView có tên listView1 (Chúng ta để tất cả các thuộc tính của listView1 với giá trị mặc định)

Button btCheck: minh họa việc duyệt các hàng được check trên ListView

Buttonbt RemoveAtColumns: Minh họa xóa một cột trong ListView

Buttonbt RemoveAtItems: Minh họa xóa một hàng trong ListView

Buttonbt ShowFile: Minh họa hiển thị tất cả các file trong một thư mục nên

12. 7.1 Tạo các cột, hàng cho ListView bằng code

13. private void frmListView_Load(object sender, EventArgs e)

14. {

15. //Đặt một số thuộc tính cho điều khiển ListView1 bằng code

16. //Bạn chỉ có thể nhìn thấy các cột nếu đặt thuộc tính View=Detail

17. listView1.View = View.Details;

18. listView1.GridLines = true;

19. listView1.CheckBoxes = true;//Hiển thị checkbox: các bạn xem kết quả ở hinhg minh họa

20

21. //Thêm 4 cột vào Listview

22. //Có thể thêm cột vào ListView theo cách này

28. ColumnHeader ch = newColumnHeader("chNgaySinh");

29. ch.Text = "Ngày sinh";

30. ch.TextAlign = HorizontalAlignment.Center;

Trang 16

31. ch.Width = 100;

32. listView1.Columns.Add(ch);

33

34. //Thêm hàng thứ nhất vào ListView

35. string[] Them = newstring[] { "Nguyễn Văn Hải", "Hưng Yên", "TK4N1", "29-03-1987" };

36. ListViewItem lv = newListViewItem(Them);

Trang 17

GV: Hoàng Quốc Việt

58

59 7.2 Duyệt xem những hàng nào được Check

60. private void btCheck_Click(object sender, EventArgs e)

61. {

62. //Bạn phải tạo ra một Listview như mục 7.1 trước đã

63. MessageBox.Show("Tên các sinh viên được Check

là","Check",MessageBoxButtons.OK);

75 7.3 Xóa một Cột tại vị trí nào đó

76. private void btRemoveAtColumns_Click(object sender, EventArgs e)

Trang 18

88 Hình 7.2: Columns ↔ Collection

89 7.4 Xóa một hàng tại một vị trí nào đó

90 → Hoàn toàn tương tự như xóa một cột

91. private void btRemoveAtItems_Click(object sender, EventArgs e)

92. {

93. //Chú ý: Tập các Items trong Listview là một Collection nên có đầy

đủ các phương thức của một Collection

94. //Ví dụ: Xóa một cột ở vị trí nào đó (tất nhiên bạn phải tạo ra một listview với các giá trị như mục 7.1)

Trang 19

GV: Hoàng Quốc Việt

100.

101

102 Hình 7.4: Items ↔ Collection

103 7.5 Duyệt tất cả các file trong một thư mục và hiển thị nên ListView

104. private void btShowFile_Click(object sender, EventArgs e)

111. //Chọn một số thuộc tính cho Listview thông qua mã lệnh

112. listView1.View = View.Details;

113. listView1.FullRowSelect = true;//Cho phép chọn cả hàng như hình kết quả dưới

114. listView1.GridLines = true;

115

116. //Add các cột vào Listview bằng mã lệnh

117. //Mỗi file có các đặc tính của file: Tên, kích thước, kiểu file (ReadOnly, System ) nên chúng ta tạo ra các cột tương ứng

118. listView1.Columns.Add("Number", 100, HorizontalAlignment.Left);

119. listView1.Columns.Add("Name", 300, HorizontalAlignment.Left);

120. listView1.Columns.Add("Size", 150, HorizontalAlignment.Left);

121. listView1.Columns.Add("Type", 100, HorizontalAlignment.Left);

Ngày đăng: 03/10/2013, 09:20

HÌNH ẢNH LIÊN QUAN

Hình 1: Minh họa về ListView - Tài liệu công nghệ Net Phần 3
Hình 1 Minh họa về ListView (Trang 9)
Hình 3: Khái niệm ColumnHeader - Tài liệu công nghệ Net Phần 3
Hình 3 Khái niệm ColumnHeader (Trang 10)
Hình 2: Cột trong ListView - Tài liệu công nghệ Net Phần 3
Hình 2 Cột trong ListView (Trang 10)
Hình 5: Khái niệm SubItems - Tài liệu công nghệ Net Phần 3
Hình 5 Khái niệm SubItems (Trang 11)
Hình 4: Khái niệm ListViewItem - Tài liệu công nghệ Net Phần 3
Hình 4 Khái niệm ListViewItem (Trang 11)
Hình 6: Minh họa về Group - Tài liệu công nghệ Net Phần 3
Hình 6 Minh họa về Group (Trang 12)
54. → Sau khi chạy có hình như sau: - Tài liệu công nghệ Net Phần 3
54. → Sau khi chạy có hình như sau: (Trang 16)
88. Hình 7.2: Columns ↔ Collection 89. 7.4. Xóa một hàng tại một vị trí nào đó - Tài liệu công nghệ Net Phần 3
88. Hình 7.2: Columns ↔ Collection 89. 7.4. Xóa một hàng tại một vị trí nào đó (Trang 18)
151. Hình 7.5: Kết quả sau khi nhấn vào Button ShowFile - Tài liệu công nghệ Net Phần 3
151. Hình 7.5: Kết quả sau khi nhấn vào Button ShowFile (Trang 20)
229. Giả sử chúng ta có hình như sau: - Tài liệu công nghệ Net Phần 3
229. Giả sử chúng ta có hình như sau: (Trang 23)
221. Hình 7.6: Group 222. - Tài liệu công nghệ Net Phần 3
221. Hình 7.6: Group 222 (Trang 23)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w