2009-12-02 15 views
22

Tôi muốn hiển thị liên kết để trợ giúp trong hộp thư. Theo mặc định, văn bản được hiển thị dưới dạng chuỗi không thể chọn.URL có thể nhấp trong Hộp thư Winform?

+2

Có vẻ như hai yêu cầu. Sử dụng Biểu mẫu thay vì MessageBox. –

Trả lời

36

Một lựa chọn là hiển thị các url trong hộp tin nhắn, cùng với một thông điệp và cung cấp các nút giúp đỡ đó sẽ đưa bạn đến url:

MessageBox.Show(
    "test message", 
    "caption", 
    MessageBoxButtons.YesNo, 
    MessageBoxIcon.Information, 
    MessageBoxDefaultButton.Button1, 
    0, '0 is default otherwise use MessageBoxOptions Enum 
    "http://google.com", 
    "keyword") 

quan trọng cần lưu ý mã này không thể trong trường hợp tải trọng biểu mẫu, nút Trợ giúp sẽ không mở liên kết.

+1

Cảm ơn, giải pháp sáng tạo trong trường hợp của tôi là đủ. Thực sự đánh giá cao nó. (Upvotes to everyone) – Jeff

+1

Lưu ý rằng từ khóa '' "' sẽ được nối thêm sau dấu # vào URL dưới dạng tham chiếu anchor. I E. http: //google.com#keyword –

+2

Nhấp vào nút trợ giúp với mã này trong C# không làm bất cứ điều gì – reggaeguitar

5

Bạn có thể sử dụng điều khiển LinkLabel trên chính mình Form cho việc này. Rất tiếc, không thể tùy chỉnh biểu mẫu MessageBox theo cách này, vì vậy bạn cần tạo Form của riêng mình để bắt chước MessageBox cho mục đích của mình.

4

Hộp thư sẽ không làm điều đó. Bạn sẽ cần phải sử dụng TaskDialog (được giới thiệu trong Vista) hoặc tạo hộp thoại của riêng bạn.

--Chỉnh sửa -
Có nhiều cách để giả mạo hộp thoại tác vụ trên XP. Có một vài bài viết trên CodeProject.com mà tôi đã sử dụng trong quá khứ.

2

Bạn phải tạo biểu mẫu của riêng mình, thay vì Hộp thư được tích hợp sẵn và bạn có thể sử dụng LinkLabel trên đó.

Tuy nhiên trên hộp MessageBox tích hợp, nút Trợ giúp có thể được hiển thị giữa các nút.

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