Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Truy cập một control trong một form từ một form khác trong wpf
Em có một câu hỏi nhờ các anh chị giúp đỡ. Em có một control wrappanel(x:Name wpPrọ) trong formmain, trong một form1 khác em có một một cái button1. Bây giờ phải làm sao để em ở form1 khi xử lí sự kiện cho button1 em có thể gọi thằng wpPro này để xử lý. Em đã thử khởi tạo một thể hiện của Mainform rồi truy cập nó thông qua thể hiện này nhưng khi chạy bấm button nó chả xử lí được gì, thằng wrappanel nó không thay đổi gì. Em đã search "How can I access a control in WPF from another class " Nhưng vẫn chưa làm được.
*Đây là cách hiểu của em khi giải quyết vấn đề này nếu có sai mong anh chị các bạn cứ chọi đá. Khi ta design form trong xaml đó chỉ là một "mẫu", "lớp" khi ta chạy nó khởi tạo đối tượng từ lớp đó. Giờ muốn thay đổi các control trong đối tượng đó phải tham chiếu đến đối tượng đó. Giờ phải làm sao đây ạ, con trỏ có làm ăn được gì không. Bất kỳ lời khuyên nào có thể. Xin cám ơn?
Em đã làm được rồi. Em cám ơn các anh.
Cái lý thuyết để sài 1 thằng nào đó là bạn cần nắm được instance của nó. Form kia có kết nối thế nào với cái FormMain của bạn. nếu form kia là con. thì bạn dùng cách là tạp event. MyClick trong form1
Form main sẽ ủy thác event dùm cho form1 rồi trong cái ủy thác đó bạn muốn làm gì thì làm. Khi form 1 click button của nó. bạn raise event MyClick lên là thằng FormMain sẽ bắt được. Đó là luồng của việc con gọi hàm tới cha.
2. Cha gọi hàm của con càng dễ. Cứ nắm đầu ra mà gọi thôi