![](/img/trans.png)
[英]How can I reuse the same view with different ViewModel in wpf prism?
[英]When using Prism on Xamarin, how can I warn if the names on the View, and ViewModel don't match?
Prism使用MVVM樣式約定命名將View綁定到Xamarin應用程序上的ViewModel。
我最近更改了一些演示代碼,並花了很多時間調試后才意識到頁面名稱與視圖不匹配。
如何啟用日志記錄或預編譯器警告,指出存在這種差異?
在View的Prism Core中,ViewModelLocationProvider負責為View定位ViewModel。 您可以在此處查看其實施方式。 如果要覆蓋默認行為並注入自己的日志記錄,則可以將其用作模板並調用ViewModelLocationProvider. SetDefaultViewTypeToViewModelTypeResolver(YourCustomerLocatorFunctionHere)
ViewModelLocationProvider. SetDefaultViewTypeToViewModelTypeResolver(YourCustomerLocatorFunctionHere)
在App.OnInitialized
。
至於任何預編譯警告,您將自己在那里編寫工具。
要增加Dan的響應,可以使用Container.RegisterTypeForNavigation<View, ViewModel>()
方法繞過命名約定,並直接向View注冊ViewModel。 這也更快,因為將不使用反射來定位VM。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.