![]() |
|
|
#1 |
|
Gà Con
![]() Tham gia: Apr 2008
Bài: 3
VZD: 191
Điểm: 0/0 bài viết
|
Trong ứng dụng của mình có 1 listView sẽ hiển thị các folder con của một folder chọn từ folderBrowserDialog. Sau đó trên listView sẽ xuất hiện các Item, mình đã xử lý sự kiện click Item như sau: click vào Item thì sẽ hiển thị các thư mục con. Để quay lại thư mục gốc thì nhấn vào button Up. Có một textbox hiển thị đường dẫn của thư mục được chọn.
Chương trình hoạt động bình thường nếu như mình chọn trong MyComputer từ folderBrowserDialog. Còn nếu chọn MyDocument chẳng hạn thì đường dãn là: C:\Documents and Settings\Administrator\My Documents Tại sao lại thiếu một dấu ' \ ' , C:\\ mới đúng. Điều này có liên quan đến folderBrowserDialog không? Có cách nào để giải quyết trường hợp này không? Vì nếu thiếu 1 dấu ' \ ' thì khi Up đến ổ C đường dẫn là C: chứ không phải C:\. ![]() |
|
|
|
|
|
#2 |
|
Rìu Sắt Đôi
![]() Tham gia: Mar 2008
Đến từ: Hà Nội
Bài: 231
VZD: 4.356
Điểm: 151/58 bài viết
|
Tớ cũng bị trường hợp này khi lập trình chương trình bắt chước windows explorer(chỉ tính năng duyệt tập tin thôi). Vì vậy tớ khuyên cậu không nên làm theo kiểu phân tích đường dẫn textbox để tìm ra thư mục mẹ mà up. Có một cách khác để nhận về chuỗi đường dẫn thư mục mẹ là:
+ Sử dụng hàm getparent của thư viện io. Vd: ta khai báo một biến tên là parentFolder và sử dụng nó như sau: DirectoryInfo parentFolder=IO.Directory.GetParent(textbox.text() ) vậy là bạn đã có một biến lưu trữ đường dẫn thư mục mẹ rồi đấy! Nhớ kiểm tra xem nó có phải là null không (tức là không có thư mục mẹ) rồi mới dùng. Chúc vui! Chú ý: để lấy đường dẫn thư mục mẹ, bạn sử dụng parentFolder.FullName, nó trả về giá trị chuỗi là đường dẫn thư mục mẹ. Nhớ cảm ơn nếu thấy bài hay! thay đổi nội dung bởi: dst, 12-04-2008 lúc 18:32. |
|
|
|
| Thành viên đã cám ơn bài viết này của dst: | taudienkk1 (14-04-2008) |
|
|
#3 |
|
Gà Con
![]() Tham gia: Apr 2008
Bài: 3
VZD: 191
Điểm: 0/0 bài viết
|
Nếu làm theo cách của bạn thì mọi chuyện đều bình thường
![]() Thanks a lot! |
|
|
|