Có hộp thoại xác nhận nội dung trong Windows Forms không?


114

Tôi muốn tạo một hộp thoại xác nhận đơn giản có nội dung "Vui lòng kiểm tra thông tin và nếu bạn chắc chắn là đúng, hãy nhấp vào OK."

Có cái gì đó được xây dựng trong như thế này?

Câu trả lời:


221

Đây là một ví dụ. Bạn có thể thử một cái gì đó như thế này.

var confirmResult =  MessageBox.Show("Are you sure to delete this item ??",
                                     "Confirm Delete!!",
                                     MessageBoxButtons.YesNo);
if (confirmResult == DialogResult.Yes)
{
    // If 'Yes', do something here.
}
else
{
    // If 'No', do something here.
}

Bạn cũng có thể thử MessageBoxButtons.OKCancelthay vì MessageBoxButtons.YesNo. Nó phụ thuộc vào yêu cầu của bạn.


2
Cách tiếp cận này đã làm việc hoàn hảo cho tôi. Tôi đã gặp trường hợp có nút "đặt lại" xóa dữ liệu và điều này cung cấp một phương pháp tuyệt vời để xử lý điều đó.
Nicholas Kreidberg

1
Trong trường hợp của tôi thay vì DialogResult tôi đã phải sử dụng MessageBoxResult
kamil.ka

MessageBoxButtons.YesNo sẽ đọc MessageBoxButton.YesNo và DialogResult thay đổi thành MessageBoxResult cho .NET 4.6.
Ian

17

MessageBox.Show? Bạn có thể chỉ định tiêu đề, chú thích và một vài tùy chọn cho các nút sẽ hiển thị.

Mặt khác, nếu bạn đang yêu cầu mọi người xác nhận thông tin, điều đó có vẻ như bạn có thể muốn hiển thị một hộp thoại tùy chỉnh - điều bạn có thể làm với Form.ShowDialog.


1
Cảm ơn, tôi sẽ xem xét lớp Form.ShowDialog. BTW, bạn đã chỉnh sửa câu hỏi của mình như thế nào mà không hiển thị bản sửa đổi?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.