Saya pikir apa yang Anda lihat adalah sebuah konsep yang disebut bind through, yaitu jika model Anda memiliki properti bernama nama dan view-model Anda mengekspos properti ini tanpa pengeditan atau konversi tambahan maka Anda dapat mengikat melalui model sehingga akan menjadi.
Kode semu:
{Binding: MyViewModel.MyModel.Name}
Hal ini dilakukan untuk mengurangi jumlah properti 'Fluff' pada model tampilan, sayangnya itu juga merupakan ide yang buruk dalam jangka panjang. Konsep model tampilan adalah untuk memastikan bahwa tampilan tidak bergantung pada model. Dengan mengikat Anda sekarang harus memastikan bahwa model Anda berisi properti bernama nama jika tidak implementasi Anda akan rusak.
Jika Anda hanya mengikat sejauh model tampilan, Anda dapat mengganti model dan tampilan tidak akan pernah tahu karena hanya akan pernah melihat properti bernama Nama pada model tampilan.
Sekarang ini dapat dikurangi dalam keadaan tertentu jika model Anda didasarkan pada antarmuka. Jadi, jika antarmuka memiliki IBaseDetails yang mengekspos properti ModuleName maka Anda bisa:
Kode semu:
{Binding: MyViewModel.MyModel.ModuleName}
Selama salah satu Model yang Anda buat memenuhi antarmuka IBaseDetails, emas Anda, perlu diketahui bahwa ini adalah kasus tepi dan secara umum Anda 90% selalu lebih baik untuk membungkus model tampilan Anda di sekitar model yang dicakupnya.