2016-03-20 12 views
1

Web'de arama yaptım ve bu basit soruya herhangi bir doğrudan açıklama getirmedim ...MVVM kullanırken ViewModel içinden üyeleri görüntüleme nasıl kullanılır?

Çalıştığım bir UWP uygulaması var ve sadece nasıl yapılacağını bilmem gerekiyor. View XAML'de bulunan bir Kılavuz öğesine veya Textblock öğesine erişin. Karşılaştığım her makale kesinlikle veri bağlama ile ilgili. Veriyi bağlamak istemiyorum. Sadece ellerimi, Görünümümün içinde yer alan bu elemanlar üzerinde bulmaya çalışıyorum, böylece onları manipüle edebilirim.

Karşılaştığım en önemli sorunlardan biri, bir RichEditBox'u ViewModel'im içinden manipüle etmek için bir MVVM yolu bulmaktır. Bu özel kontrol tamamen XAML üzerinden manipüle edilemez ve kod kullanımını gerektirir.

Evet, temel olarak, bu nesnelerin ViewModel'den nasıl bir başvuru alacağım?

+3

Önce MVVM hakkında daha fazla bilgi edinmelisiniz. MVVM'nin ardındaki fikir, görünümü (ui) görüntü modelinden ayırmaktır (sunum mantığı). Görünen o ki, bir ViewModel görünümde olan herhangi bir şeyden habersizdir, bu yüzden cevap: Hiç de değil. Komutları ve bildirim özelliklerine sahipsiniz, bu görünümle iletişim kurmak için kullandığınız şeydir. Ekli özellikler gibi etrafta çalışmak için kullanabileceğiniz başka araçlar da var. Ekli özellikler XAML'deki bir kullanıcı denetimine eklenebilir ve buna özellik veya komutları bağlayabilirsiniz. – Tseng

+1

Yeterince karmaşık ve genel bir çözümünüz varsa, bir kullanıcı denetimi yapabilirsiniz. Kullanıcı denetimlerinde, gerekli tüm mantığı koymak için kodun arkasını kullanabilir ve sonra da bağımlılık özelliklerini komutlara ve özelliklerine bağlayabilirsiniz. Kullanıcı kontrolleri ve http://stackoverflow.com/a/35983746/455493 ve http://stackoverflow.com/a/35395128/455493'ün arkasındaki kod hakkındaki benzer soruları yanıtlarıma bakın. – Tseng

cevap

5

Tüm MVVM noktası, görünümü ve görünüm modelini ayırmaktır.

Görünüm modelinden veri bağlama ile yapamayacağınız bir şey varsa, her zaman kodu kodun arkasına koyabilirsiniz.