Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh menggunakan Fungsi Model Paparan Utama daripada Model Paparan Kanak-kanak dalam Aplikasi WPF?
Menggunakan Fungsi Model Paparan Utama daripada Model Paparan Lain
Masalah:
Dalam aplikasi dengan paparan pokok dan berbilang penyampai kandungan, anda berusaha untuk menggunakan fungsi dalam model paparan tetingkap utama (MainWindowViewModel) daripada model paparan pokok (TreeViewViewModel). Ini diperlukan untuk mengemas kini paparan secara manual, kerana MainWindowViewModel mengawal perubahan tersebut.
Penyelesaian:
Menggunakan objek perwakilan ialah penyelesaian yang berdaya maju untuk komunikasi ibu bapa-anak ini. Kaedah perwakilan boleh digunakan dalam pelbagai konteks, termasuk model pandangan anak-ibu bapa, perhubungan di belakang kod dan interaksi data tulen. Untuk mendapatkan maklumat lanjut tentang perwakilan, rujuk dokumentasi Perwakilan Microsoft (Panduan Pengaturcaraan C#).
Pelaksanaan perwakilan:
Dalam TreeViewViewModel, anda boleh melaksanakan perwakilan untuk menyediakan laluan kembali ke model paparan induk. Tentukan kaedah perwakilan untuk digunakan apabila model paparan anak sedia:
public delegate void ReadyForUpdate(); public ReadyForUpdate OnReadyForUpdate { get; set; }
Model paparan utama (MainWindowViewModel) kemudiannya akan melanggan kaedah UpdateDisplay selepas melampirkan pengendali:
public void TreeViewViewModel_OnreadyForUpdate() { UpdateDisplay(); }
Pendekatan Pengikatan Data:
Sebagai alternatif, pertimbangkan pendekatan yang lebih mudah yang melibatkan pengikatan data langsung daripada paparan anak kepada model paparan induk. Sebagai contoh, ikat sifat arahan butang:
<!-- In TreeViewView --> <Button Content="Click Me" Command="{Binding DataContext.ParentCommand, RelativeSource={RelativeSource AncestorType={x:Type MainWindow}}}" />
Ini menganggap MainWindow's DataContext ditetapkan kepada contoh model paparan induk.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menggunakan Fungsi Model Paparan Utama daripada Model Paparan Kanak-kanak dalam Aplikasi WPF?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!