2011-07-03 33 views

Trả lời

5

Tôi đã viết một chút trước đây, nó hoạt động chính xác như lớp hộp thông thường.

CustomMessageBox (Class): http://pastebin.com/m8evBmZi

MessageForm (Mẫu): http://pastebin.com/jawHZDzY

MessageForm (thiết kế Code): http://pastebin.com/CRXjeUFN

+0

hmmm ... vậy sao? :) Tôi đã nghĩ rằng một nơi nào đó tôi sẽ chỉ làm "Thêm hình ảnh mới" và thì đấy, nhưng đó là một công việc thực sự để làm :) tôi có cơ hội để làm một số công cụ tùy chỉnh, đọc và hiểu mã của bạn trong một thời gian để nắm bắt của nó ... Cảm ơn –

+1

Không sao, đừng quên đánh dấu là câu trả lời. Vui lòng sử dụng mã của tôi, nó không được bảo vệ bản quyền. :) –

3

Bạn không thể ghi đè hành vi này của MessageBox. Giải pháp là sử dụng một số hộp thông báo tùy chỉnh, hãy kiểm tra this hoặc triển khai MessageBoxForm của riêng bạn và thêm cài đặt tùy chỉnh vào đó, kiểm tra this.

1

Bạn có thể sử dụng Task Dialog Indirect API từ Microsoft, mà sẽ giúp bạn để hiển thị hộp thoại tùy chỉnh .

+0

Nếu bạn là Rube Goldberg có lẽ, nếu không tôi có thể chỉ tạo Biểu mẫu của riêng mình ... –

+0

@Ed S Tại sao nên phát minh lại bánh xe, nếu có sẵn API, bạn có thể dễ dàng sử dụng quyền đó thay vì tạo một cái mới :) – Anuraj

+1

Tôi không nghĩ rằng việc sử dụng PInvoke ở đây được bảo hành. Đây không phải là phát minh lại bánh xe, điều này giống như phát minh lại ... kẹp giấy. Một nhiệm vụ đơn giản. –

0

Bạn không thể trực tiếp thay đổi biểu tượng của MessageBox để tôi googled nó và tôi tìm thấy giải pháp cho điều đó. chúng ta có thể thay đổi biểu tượng của hộp thông báo bằng cách sử dụng móc cửa sổ.

Nghe là các liên kết MSDN Magazine,

Link-1

Link-2

và họ cũng cung cấp ứng dụng mẫu vào liên kết này.

Tôi hy vọng điều này sẽ giúp bạn!

Các vấn đề liên quan