2009-09-10 42 views
6

ALT + TAB không hoạt động sau khi hiển thị MessageBox trên hộp thoại modal ...ALT + TAB không hoạt động sau khi hiển thị MessageBox trên modal thoại

Tôi đã ba dự án (P1, P2 và P3) dưới một tệp giải pháp. P1 chứa P1Form.cs, P2 chứa P2Form.cs.

chi tiết của những tập tin này như sau:

P1Form.cs chứa một nút trong đó cho thấy các tin nhắn hộp từ MessageBox.Show() phương pháp. P2Form.cs chứa một nút hiển thị hộp Thư từ phương thức MessageBox.Show().

Dự án P3 chứa 3 biểu mẫu Form_A, Form_B và Form_C. Form_A là vùng chứa MDI và có một nút mở Form_B làm biểu mẫu con của nó. Form_B cũng có một nút mở hộp thoại Form_C như phương thức từ phương thức ShowDialog().

Form_C được kế thừa từ P2Form.cs và P2Form.cs được kế thừa từ P1Form.cs. Form_A.cs là biểu mẫu chính sẽ là biểu mẫu đầu tiên cho ứng dụng.

Các bước để tạo vấn đề mong muốn:

  1. Mở Form_A là MDI container
  2. Bấm vào nút này sẽ mở Form_B
  3. Một lần nữa nhấn nút trên Form_B sẽ mở Form_C mà sẽ có hai nút (cả hai nút là từ các lớp cơ sở P1Form.cs và P2Form.cs)
  4. Nhấp vào nút bất kỳ của Form_C mà sẽ mở hộp thư.

Vấn đề: Bây giờ chuyển cửa sổ qua Alt + Tab. Bạn sẽ không thể nhìn thấy biểu tượng cửa sổ hiện tại trên cửa sổ chuyển đổi.

lựa chọn thay thế mà tôi đã cố gắng ...

  1. Nếu tôi sử dụng Form.show() thay vì Form.ShowDialog, sau đó nó hoạt động tốt.
  2. Nếu tôi viết tất cả mã hóa MessageBox trong lớp hiện tại thay vì viết trong lớp cơ sở, thì nó hoạt động tốt.

Ai đó có thể đề xuất tôi làm cách nào để giải quyết vấn đề này mà không thực hiện cả hai lựa chọn thay thế được đề cập ở trên mà tôi đã thử?

+1

đánh dấu tốt đẹp của bài viết của bạn, và rằng đối với một user.Thumbs mới lên! – Natrium

Trả lời

1

Cố gắng thiết lập một mối quan hệ cha-con từ Form_B (mẹ) để Form_C (trẻ em):

Form_C f = new Form_C(); 
f.ShowDialog(this); 
+0

Quên thêm liên kết MSDN: http://msdn.microsoft.com/en-us/library/aa984358 (VS.71).aspx # Mtps_DropDownFilterText – alexm

+0

Bạn không thể chỉnh sửa bài đăng của riêng mình? +1 anyway. Đây là câu trả lời tôi sẽ đưa ra. – jpbochi

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