Các giải pháp lập trình CSharp- P48: Các giải pháp lập trình C# khảo sát chiều rộng của thư viện lớp .NET Framework và cung cấp giải pháp cụ thể cho các vấn đề thường gặp. Mỗi giải pháp được trình bày theo dạng “vấn đề/giải pháp” một cách ngắn gọn và kèm theo là các ví dụ mẫu. | 361 Chương 9 File thư mục và I O TreeView rất thích hợp với cách tiếp cận này vì nó cung cấp sự kiện BeforeExpand sự kiện này phát sinh trước khi một cấp mới được hiển thị . Bạn có thể sử dụng một placeholder như dấu hoa thị hay nút rỗng trong tất cả các nhánh chưa được thêm vào. Điều này cho phép bạn thêm vào các phần của cây thư mục khi chúng được hiển thị. Để sử dụng kiểu giải pháp này bạn cần ba yếu tố sau Phương thức Fill thêm một cấp mới vào một thư mục. Bạn sẽ sử dụng phương thức này để thêm vào các cấp khi chúng được mở rộng. Phương thức thụ lý sự kiện sử dụng Fill để tạo cây với cấp đầu tiên. Phương thức thụ lý sự kiện phản ứng khi người dùng mở rộng một nút và gọi Fill nếu thông tin của thư mục này chưa được thêm. Dưới đây là phần mã cho form using System using using using public class DirectoryTree private treeDirectory Bỏ qua phần mã designer. private void Fill TreeNode dirNode Directoryinfo dir new Directoryinfo Một ngoại lệ có thể bị ném nếu bạn không có đủ quyền thao tác trên file hay thư mục. Bạn có thể bắt và bỏ qua ngoại lệ này. foreach Directoryinfo diritem in Thêm nút giả cho thư mục. TreeNode newNode new TreeNode newNode private void DirectoryTree Load object sender e 362 Chu ong 9 File thu muc va I O Thiet lap nut dau tien. TreeNode rootNode new TreeNode C rootNode Them cap thu nhat va mo rong no. Fill rootNode 0 .Expand private void treeDirectory BeforeExpand object sender e Neu tim thay mot nut gia xoa no va doc cac thu muc that. if 0 .Text Fill Hinh Mot cay th muc vdi TreeView 363 Chương 9 File thư mục và I O 7. ĐỌc và ghi file văn bản ỉ Bạn cần ghi dữ liệu vào một file văn bản .