Cách sử dụng hộp thoại mở tệp trong ứng dụng C#

Cach Su Dung Hop Thoai Mo Tep Trong Ung Dung C



Xây dựng các ứng dụng đồ họa bằng C# và khung Windows Forms là một trong những cách tốt nhất để mở rộng kỹ năng C# của bạn. Giống như tất cả các định dạng lập trình khác, cuối cùng bạn sẽ thấy mình đang xây dựng một ứng dụng hoạt động với các tệp.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn những kiến ​​thức cơ bản khi làm việc với ứng dụng Windows Graphical bằng cách tìm hiểu cách xây dựng một ứng dụng có thể đọc các tệp chỉ bằng một nút bấm.







Chúng tôi sẽ chủ yếu tập trung vào OpenFileDialog cho phép chúng tôi duyệt và chọn các tệp từ hệ thống tệp. Nó là một phần của không gian tên System.Windows.Forms. Do đó, bạn sẽ phải cài đặt các công cụ WFP.



Tạo một dự án

Trước khi có thể sử dụng Thành phần OpenFileDialog, chúng ta cần tạo một dự án hỗ trợ Windows Forms. Bạn có thể làm theo các bước như được nêu sau đây bằng cách sử dụng Visual Studio 2022 trở lên.



Khởi chạy Visual Studio 2022 và chọn tùy chọn “Tạo dự án mới”.






Trong bước tiếp theo, chọn mẫu dự án mà bạn muốn sử dụng. Trong trường hợp của chúng tôi, chúng tôi muốn tạo Ứng dụng Windows Forms. Chọn mẫu này.


Trong bước tiếp theo, chọn phiên bản NET của bạn và cung cấp tên cho dự án của bạn.



Thêm một nút

Sau khi bạn tạo dự án, Visual Studio sẽ đưa bạn đến trình chỉnh sửa kéo và thả nơi bạn có thể kéo các thành phần bạn cần.

Đối với trường hợp của chúng tôi, điều đầu tiên chúng tôi cần là một nút kích hoạt OpenFileDialog. Từ menu hộp công cụ, kéo và thả nút vào khung vẽ.


Thay đổi thuộc tính văn bản của nút thành “Mở tệp”.

Trình xử lý sự kiện bấm nút

Tại thời điểm này, nút không làm gì khi nhấp chuột. Để đảm bảo rằng nút mở OpenFileDialog, chúng ta cần thêm một trình xử lý sự kiện.

Nhấp đúp chuột vào nút hoặc nhấn F7 để mở trình soạn thảo mã.


Trong trình xử lý sự kiện nút, hãy thêm mã sau để khởi tạo và mở OpenFileDialog:

nút trống riêng tư1_Click ( người gửi đối tượng, EventArgs e )
{
sử dụng ( OpenFileDialog openFileDialog = OpenFileDialog mới ( ) )
{
nếu như ( openFileDialog.ShowDialog ( ) == Hộp thoạiResult.OK )
{
chuỗi đã chọnFile = openFileDialog.FileName;
MessageBox.Show ( 'Tập tin đã chọn:' + File đã chọn ) ;
}
}
}


Trong ví dụ đã cho, chúng ta bắt đầu bằng việc tạo một thể hiện của lớp OpenFileDialog. Chúng tôi cũng sử dụng câu lệnh “using” để đảm bảo rằng nó được xử lý đúng cách sau khi thao tác hoàn tất nhằm tránh lãng phí tài nguyên.

Sau đó, chúng tôi kiểm tra xem người dùng đã xác nhận việc lựa chọn tệp hay chưa bằng cách nhấp vào nút “OK”.

Cuối cùng, chúng tôi tìm nạp đường dẫn đầy đủ của đường dẫn đã chọn và hiển thị nó bên trong thành phần MessageBox.

Hãy thử chạy mã và xem nó làm gì. Trong trường hợp của chúng tôi, mã cho phép chúng tôi mở bộ chọn tệp dựa trên một lần nhấp vào nút và hiển thị đường dẫn đến tệp đã chọn như sau:

Chọn các loại tệp cụ thể

Tùy thuộc vào việc sử dụng ứng dụng của bạn, bạn có thể chỉ muốn đọc các tệp cụ thể. Đây là lúc tính năng lọc tập tin phát huy tác dụng. Giả sử chúng ta chỉ muốn chọn các tệp hình ảnh, chúng ta có thể triển khai chức năng lọc tệp cho các tệp hình ảnh bằng cách đặt thuộc tính “Bộ lọc” của OpenFileDialog.

Hãy xem đoạn mã sau:

nút trống riêng tư1_Click ( người gửi đối tượng, EventArgs e )
{
sử dụng ( OpenFileDialog openFileDialog = OpenFileDialog mới ( ) )
{
openFileDialog.Filter = 'Hình ảnh|*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.tiff,*.webp,*.heif,*.ico,*.raw' ;
nếu như ( openFileDialog.ShowDialog ( ) == Hộp thoạiResult.OK )
{
chuỗi đã chọnFile = openFileDialog.FileName;
MessageBox.Show ( 'Tập tin đã chọn:' + File đã chọn ) ;
}
}
}


Khi chạy mã và nhấp vào nút, chúng ta sẽ thấy các loại tệp mà chúng ta được phép chọn như trong ví dụ sau:

Hiển thị nội dung tập tin

Để thêm nhiều chức năng hơn cho ứng dụng của chúng tôi, chúng tôi có thể hiển thị nội dung của tệp bằng hộp thông báo như sau:

nút trống riêng tư1_Click ( người gửi đối tượng, EventArgs e )
{
sử dụng ( OpenFileDialog openFileDialog = OpenFileDialog mới ( ) )
{
openFileDialog.Filter = 'Tệp văn bản|*.txt' ;
nếu như ( openFileDialog.ShowDialog ( ) == Hộp thoạiResult.OK )
{
chuỗi đã chọnFile = openFileDialog.FileName;
nội dung chuỗi = File.ReadAllText ( đã chọnTệp ) ;
MessageBox.Show ( 'Nội dung tập tin:' + nội dung ) ;
}
}
}


Trong trường hợp này, chúng tôi đang lọc các tệp văn bản vì chúng dễ đọc. Khi chọn tệp, chúng tôi sử dụng File.ReadAllText() và lưu nội dung của tệp vào một biến.

Sau đó, chúng tôi hiển thị nội dung tệp bằng MessageBox như được hiển thị trong chức năng tệp kết quả:


Ở đó bạn có nó!

Phần kết luận

Trong hướng dẫn tuyệt vời này, bạn đã học cách xây dựng một ứng dụng GUI cơ bản trong C# để có thể đọc tệp và hiển thị nội dung bằng OpenFileDialog. Bạn cũng đã tìm hiểu các tính năng như lọc các tệp cụ thể, v.v.