Tôi có cửa sổ cha khởi động cửa sổ con, sau khi thực hiện một số lựa chọn/hoạt động trong cửa sổ con và tôi muốn gửi một số thông tin về cửa sổ chính (một lớp tùy chỉnh đối tượng), cách tốt nhất để thực hiện điều này trong WPF bằng cách sử dụng các tính năng được cung cấp bởi WPF là gì?Giao tiếp giữa cửa sổ phụ huynh và cửa sổ con trong wpf
Trả lời
Bạn có nhiều lựa chọn:
- Bạn có thể sử dụng một sự kiện tùy chỉnh trong cửa sổ con của bạn rằng cửa sổ cha mẹ lắng nghe
- Bạn có thể định nghĩa một delegate trong cửa sổ con tham chiếu đến một phương pháp trong các phụ huynh cửa sổ
- Bạn có thể thay đổi hàm tạo cho cửa sổ con để tham chiếu đến cửa sổ chính và gọi phương thức trên cửa sổ chính bằng cách sử dụng tham chiếu
- Bạn có thể sử dụng lớp VisualTreeHelper để có cửa sổ chính và gọi ethod trên tham chiếu đó
Trích từ this link:
Cách đơn giản nhất tôi đã tìm thấy để truyền dữ liệu từ một cửa sổ con đến một cửa sổ mẹ là sử dụng một tài sản rộng ứng dụng. Thuộc tính này là một đối tượng và không phải là hình thức thanh lịch nhất để truyền dữ liệu từ cửa sổ con cho cha mẹ, nhưng đó là số lượng ít nhất của chương trình. Cách tốt nhất để thực hiện việc này là sử dụng lấy và đặt thuộc tính accessor.
Tạo một cửa sổ chính (MainWindow) Tạo một cửa sổ con (trong trường hợp này, Password)
Trong cửa sổ chính, cửa sổ con phải được hiển thị, chẳng hạn, trong một nút bấm. Cửa sổ này sẽ có một nút để làm điều gì đó, trong trường hợp này, nó sẽ xóa một bản ghi khỏi cơ sở dữ liệu.
private void btnDelete_Click(object sender, RoutedEventArgs e)
{
Password passwordentry = new Password();
passwordentry.ShowDialog();
if (Application.Current.Properties["PassGate"].ToString() == "mypassword")
{
Code, or call to delete the record;
}
Application.Current.Properties["PassGate"] = "";
}
Trong cửa sổ con (Mật khẩu), thuộc tính cho ứng dụng là bộ sử dụng một hộp văn bản. Đây là một cửa sổ đơn giản có một hộp văn bản được gọi là PasswordTextBox và một vài nút, như Chấp nhận và Hủy.
private void AcceptButton_Click(object sender, RoutedEventArgs e)
{
Application.Current.Properties["PassGate"] = PasswordTextBox.Text;
this.Close();
}
- 1. Cửa sổ Win32 Chủ sở hữu so với cửa sổ Phụ huynh?
- 2. Cửa sổ chủ sở hữu WPF phía trên cửa sổ con
- 3. Giao tiếp Javascript giữa các tab/cửa sổ trình duyệt
- 4. mở cửa sổ phương thức từ iframe vào phụ huynh
- 5. Tài liệu tham chiếu cửa sổ chính của phụ huynh
- 6. Gọi JavaScript của cửa sổ mẹ từ cửa sổ con
- 7. Cách đặt tiêu đề cửa sổ căn giữa (cửa sổ trong wpf)
- 8. Cửa sổ WPF tải trước
- 9. làm mới cửa sổ mẹ khi đóng cửa sổ con
- 10. Tải lại cửa sổ cha mẹ từ cửa sổ con
- 11. Sự khác biệt giữa $ (cửa sổ) và cửa sổ trong jquery/javascript
- 12. WPF: Cửa sổ tùy chỉnh
- 13. Có một cửa sổ wpf bên trong một cửa sổ wpf khác
- 14. Cách tạo Cửa sổ Mẫu trong WPF?
- 15. Cách căn giữa cửa sổ WPF trong Excel VSTO addin
- 16. Javascript truyền dữ liệu từ cửa sổ con đến cửa sổ chính, lỗi IE?
- 17. PNG trong WPF trong cửa sổ
- 18. Đóng Cửa sổ từ Khác Trong Wpf
- 19. Nhúng cửa sổ Bảng điều khiển bên trong Cửa sổ WPF
- 20. Chụp khóa cửa sổ trong C# (wpf)
- 21. Hủy đóng cửa sổ trong WPF
- 22. Mở cửa sổ WPF trong WindowsForm APP
- 23. Giao tiếp giữa dịch vụ cửa sổ và ứng dụng dành cho máy tính để bàn
- 24. WM_EX_TRANSPARENT không sơn lại cửa sổ con
- 25. Gửi sự kiện giữa 2 cửa sổ WPF
- 26. Cửa sổ con Silverlight trong mẫu MVVM
- 27. WPF - Đặt vị trí cửa sổ hộp thoại liên quan đến cửa sổ chính?
- 28. Làm cách nào để mở cửa sổ thứ hai từ cửa sổ đầu tiên trong wpf?
- 29. TCP - sự khác biệt giữa cửa sổ Congestion và cửa sổ Nhận
- 30. Lệnh chuyển tiếp trong cửa sổ 8 cửa sổ ứng dụng lưu trữ