Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kāda ir labākā prakse, lai pakļautu sabiedrisko īpašību saistīšanai MVVMCross


Kāda ir labākā prakse, lai pakļautu sabiedrisko īpašību saistīšanai MVVMCross


Sabiedrisko īpašumu pakļaušana saistīšanai MVVMCross ir būtiska, lai efektīvi saistītu datus starp skatiem un skatu modeļiem. Šeit ir dažas labākās prakses, kas jāievēro:

Izpratne par saistīšanas jēdzieniem

MVVMCROSS saistīšana ietver avota īpašuma savienošanu skata modelī ar mērķa īpašību skatā. Avots parasti ir publisks īpašums skata modelī, savukārt mērķis ir publisks īpašums, skatoties, ar kuru vēlaties saistīties ar [1].

publiskie īpašumi

Lai īpašums būtu saistāms ar MVVMCross, tam jābūt publiskam. Tas attiecas gan uz skata modeli, gan uz skatu. Ja jūs izmantojat pielāgotu skatu vai vadību, pārliecinieties, ka īpašības, kuras vēlaties saistīt, ir publiski [1] [2].

InotifyPropertyChanged ieviešana

View modelī ieviesiet inotifyPropertyChanged, lai paziņotu iesiešanas motoru, kad mainās īpašumi. MVVMCROSS nodrošina palīgu metodes, piemēram, `setProperty` uz` MVXViewModel`, lai vienkāršotu šo procesu. Tas nodrošina, ka skatā tiek atspoguļotas izmaiņas skata modelī [4].

Pielāgoti mērķa iesiešanas

Ja jums ir jāsaista rekvizīti Twoway režīmā vai jārīkojas pēc pielāgotiem scenārijiem, jums, iespējams, būs jāizveido pielāgota mērķa saistīšana. Tas nozīmē noteikt, kā iestatīt īpašuma vērtību un kā klausīties izmaiņas. Lai vienkāršotu procesu [2], varat izmantot bāzes nodarbības, piemēram, `MVXPropertyInfotargetBinding` vai` MVXWithEventPropertyInfotargetBinding`, lai vienkāršotu [2].

Mērķa iesiešanas reģistrēšana

Pēc pielāgotas mērķa saistīšanas izveidošanas jums tas jāreģistrē failā “Setup.cs”, ignorējot `FillTargetFactories`. Tas nodrošina, ka MVVMCross zina, kā rīkoties ar jūsu pielāgotajām saitēm [2].

Fluent Bindings

MVVMCROSS atbalsta tekošus iesiešanas gadījumus, kas ļauj definēt iesiešanas kodā. Izmantojot tekošas iesiešanas, pārliecinieties, vai mērķis ir faktiskais viedoklis, ar kuru vēlaties saistīties, vai atklāt vēlamo īpašumu kā publisku [1].

ligzdotas īpašības

MVVMCROSS atbalsta saistīšanos ar ligzdotajām īpašībām. Piemēram, jūs varat saistīties ar apakšskata modeļa īpašumu. Pārliecinieties, ka apakšskata modelis īsteno “inotifyPropertyChanged” un vai iesiešanas ceļš ir pareizi norādīts [5].

atkļūdošanas iesiešanas

Ja iesiešanas darbi nedarbojas, kā paredzēts, izmantojiet `mvxBindingTrace`, lai palielinātu saistīšanas izsekošanas līmeni. Tas var palīdzēt identificēt problēmas, nodrošinot detalizētu izvadi par saistošām darbībām [5].

Izpildot šo labāko praksi, jūs varat efektīvi pakļaut un saistīt sabiedriskos īpašumus MVVMCross, nodrošinot stabilas un uzturējamas MVVM lietojumprogrammas.

Atsauces:
[1] https://blog.ostebaronen.dk/2018/01/mvvmcross-tonging-target.html
[2] https://www.mvvmcross.com/documentation/advanced/custom-data saistoši
[3.]
[4] https://www.mvvmcross.com/documentation/fundamentals/data
[5] https://stackoverflow.com/questions/20986140/binding-sub-properties-mvvmcross
[6] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/window
[7] https://stackoverflow.com/questions/10700445/in-mvvmcross-how-do-i-do-custom-bind-properties
[8] https://www.mvvmcross.com/documentation/advanced/customing-using-app-and-setup