2011-06-18 33 views
9

Tôi có một cửa sổ WPF mà tôi chỉ tạo một lần và sau đó Show() và Hide() nhiều lần. Bây giờ tôi đang tìm kiếm một cách để tập trung vào một phần tử trên mỗi Show(). Tôi có thể làm điều này ở đâu và như thế nào?WPF Window đặt Focus

+2

sử dụng Sự kiện kích hoạt cửa sổ của bạn –

+0

chỉ là kén chọn: đây không phải là hướng dẫn giao diện người dùng mà từ người dùng trải nghiệm người dùng không thích rối tung với những gì họ đã đặt. I E. nếu tôi đặt tiêu điểm vào hộp văn bản thì hãy chuyển sang tab alt để sao chép một số giá trị nếu bạn ẩn và hiển thị biểu mẫu mà tôi mong đợi vẫn ở trong hộp văn bản đó. Nhưng tất nhiên câu hỏi của bạn có thể được lấy cảm hứng từ yêu cầu của người dùng. trong trường hợp đó, hãy quên đi mọi thứ :) –

Trả lời

5

Trong WPF có hai khái niệm chính liên quan đáng chú ý: bàn phím tập trung và tập trung logic. Tiêu điểm bàn phím đề cập đến phần tử nhận đầu vào bàn phím và tiêu điểm lôgic đề cập đến phần tử trong phạm vi tiêu điểm có tiêu điểm. Những khái niệm này được thảo luận chi tiết trong tổng quan this.

Có thể bạn có thể viết phương thức ShowHide của riêng bạn bằng cách bao gồm cả các hàm Window.Show/Hide và element.Focus để xử lý cả hai trong cùng một phương thức.

18

Chỉ cần gọi Element.Focus() trên phần tử bạn muốn lấy nét.

Nếu bạn có ý nghĩa mang lại tập trung vào cửa sổ thử gọi window.Activate()

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