Denetimlerin çoğunun kodda oluşturulduğu ve AddView yöntemini kullanarak mizanpaja eklendiği bir uygulamam var. Çerçeve, ViewModel özelliklerinin kod kullanarak kontrollere bağlanmasına izin veriyor mu yoksa yalnızca axml dosyasında yapılması gerekiyor mu?MvvmCross, ViewModel özelliklerinin anında oluşturulan denetimlere bağlanmasına izin veriyor mu?
cevap
Tamam, mücadelenin çok sonra nihayet cevap aldım.
aşağıdaki şeyler yapmak zorunda kaldı.protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Hello);
TableLayout containerLayout = this.FindViewById<TableLayout>(Resource.Id.containerLayout);
if (containerLayout != null)
{
TableRow newRow = new TableRow(base.ApplicationContext);
newRow.SetMinimumHeight(50);
var txtRace = new EditText(ApplicationContext);
txtRace.Hint = "Race";
var bindingSet = this.CreateBindingSet<HelloView, HelloViewModel>();
bindingSet.Bind(txtRace).To(vm => vm.Race);
bindingSet.Apply();
newRow.AddView(txtRace);
containerLayout.AddView(newRow);
}
}
Zaten var benim HelloView.axml dosyasında "TableLayout" ve benimle ilgili her şey:
using Cirrious.MvvmCross.Binding.BindingContext;
2) Aşağıdaki kodu Eklendi:
1) bir import ifadesi eklendi Bunu yapmak, yeni bir EditText kutu denetimi (txtRace) oluşturmak ve onu görünümüne ekleyerek ve aynı zamanda HelloViewModel nesnesinin "Race" özelliğine bağlamaktır.
Ben VS2012 bana bu konuda herhangi intelliscence vermiyordu çünkü yöntem var) (Ne ad CreateBindingSet içinde anlamaya çalışıyorum çok zaman geçirirler. Bu benzer bir sorun bakacak birileri yardımcı olur
Umut. Yanıtınız için
Evet MvvmCross zamanında oluşturulan denetimlere bağlama özelliklerini destekler. Bu dersi N + 1 serisinde harika Bay Stuart tarafından izleyebilirsiniz. http://www.youtube.com/watch?feature=player_embedded&v=cYu_9rcAJU4
Not: Bu dizide bir çok kez göstermişti ama bunu şu anda kafamın tepesinde hatırlıyorum.
Teşekkür Mohib. – Amit
Bu konuda hala aşığım. Şu makaleye bakıyordum: http://stackoverflow.com/questions/16724278/mvvmcross-for-android-how-to-do-binding-in-code. Karşılaştığım sorun, CreateBindingSet() yöntemini alamam. Şu anda benim etkinliğim MvxActivity'den miras. Bazı montaj referansını veya ad alanını kaçırmıyorum. – Amit
Videoya bağlantı için teşekkürler. Bay Stuart'in bahsettiğiniz bölüm çoklu görünüm modellerine sahip olabilir. –
- 1. ViewModel değişkenlerinden başka bir Görünüme geçme (MVVMCross)
- 2. MvvmCross bağlama özelliği görüntülemek için Viewmodel özelliği
- 3. Amazon EC2, araç takmaya izin veriyor mu?
- 4. Vimscript çok satırlı dizelere izin veriyor mu?
- 5. Mvvmcross
- 6. Web sitesi tarafından kurulan iOS sertifikası oturuma UUID aygıtının bağlanmasına izin veriyor
- 7. Mvvmcross
- 8. iPhone SDK dock bağlantı noktasına donanım erişimine izin veriyor mu?
- 9. C++, değişken şablon parametrelerinden sonra normal parametrelere izin veriyor mu?
- 10. zlib bir dosyanın ortasından sıkıştırmaya izin veriyor mu
- 11. C++ 11, tanımlayıcılardaki dolar işaretlerine izin veriyor mu?
- 12. PushSharp iOS için GCM'ye bildirim göndermeye izin veriyor mu?
- 13. WPF datagrid, kullanıcının satır eklemesine izin veriyor mu?
- 14. Can java'nın assert ifadesi bir mesaj belirtmenize izin veriyor mu?
- 15. Android ORM, doğrudan bir çok ilişkiye izin veriyor mu?
- 16. Mongoose aynı anda birden fazla veritabanı isteğine izin veriyor mu?
- 17. passport.js, kullanıcıların hesapları kaldırmasına izin veriyor mu? alternatif var mı
- 18. Linux Kernel, bir işlemin% 100 bellek tüketmesine izin veriyor mu?
- 19. Qt/Gtk +, iki dilde aynı anda programlamaya izin veriyor mu?
- 20. Web.config rolü ve kullanıcı adları beyaz boşluğa izin veriyor mu?
- 21. "kullanımı sıkı"; şimdi çoğaltılan özelliklere izin veriyor?
- 22. Task.Delay() neden sonsuz bir gecikmeye izin veriyor?
- 23. Google, başkalarının "Bunu mu demek istediniz?" API'sini kullanmasına izin veriyor mu?
- 24. Kayıtlı video Anında Konumdan dosya okunamıyor mu?
- 25. Dinamik olarak eklenen denetimlere etkinlik ekleme
- 26. ViewModel
- 27. Viewmodel
- 28. VerticalAlignment özelliğini tüm denetimlere ayarlama
- 29. Devise, kullanıcıların şifreleri değiştirmesine izin veriyor
- 30. Java neden tanımlayıcılarında kontrol karakterlerine izin veriyor?
Sıraladığınızı bilmek güzel. İyi şanslar! –