我已經安裝了使用棱鏡的Windows應用商店應用程序。我需要使用命令來通知視圖模型的動作,但在這種情況下我不能使用按鈕。有沒有辦法從視圖中觸發視圖模型中定義的命令,但以不可知論的方式,以便視圖/視圖模型不緊密耦合?手動火棱鏡命令
Q
手動火棱鏡命令
0
A
回答
2
if(command.CanExecute(parameter))
command.Execute(parameter);
1
如果您想要在代碼後面放置調用命令,您可以執行Aron建議的操作。
如果您不喜歡背後的代碼,或者很難將代碼隱藏起來,比如DataTemplate,您應該考慮觸發命令的條件。如果你的命令是由某個事件觸發的,你可以像下面那樣使用Prism,你也可以選擇一些其他的在Prism中建立的觸發器或者自己寫觸發器。
<i:Interaction.Triggers>
<i:EventTrigger EventName="FrameworkElement.Loaded">
<i:InvokeCommandAction Command="{Binding LoadCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
如果您有更復雜的邏輯,您可以使用ICommand DependencyProperty編寫行爲。將您的ViewModel命令綁定到DependencyProperty並在您的行爲中使用它。
相關問題
- 1. wpf棱鏡複合命令
- 2. 將棱鏡命令附加到網格?
- 3. Datagrid與棱鏡綁定命令WPF
- 4. 棱鏡SetProptery不開火通知?
- 5. 升級CAB和棱鏡2棱鏡4
- 6. 可滾動的棱鏡:PopupWindowAction
- 7. 棱鏡CompositeEvent不與助手類指定
- 8. 棱鏡自定義命令不顯示在xaml
- 9. 使用棱鏡庫將ListView項目傳遞給命令
- 10. 可以使用棱鏡代表命令執行問題
- 11. 使用棱鏡在wpf中將命令附加到TreeView中
- 12. 如何棱鏡
- 13. ViewModelLocator棱鏡mvvm
- 14. 棱鏡導航
- 15. 棱鏡與ASP.NET
- 16. 棱鏡scultpure Silverlight
- 17. 棱鏡模塊生命週期
- 18. 角棱鏡Raygun 1.2.6
- 19. ADO.NET DataServices與棱鏡
- 20. 棱鏡VM背後
- 21. 棱鏡和區域
- 22. 棱鏡V4與DirectoryModuleCatalog
- 23. 棱鏡從區域
- 24. 棱鏡AnimatedTabControl定製
- 25. 棱鏡MVVM結構
- 26. vcl.net到delphi棱鏡
- 27. 棱鏡+ MEF:延遲棱鏡模塊的服務出口
- 28. 從棱鏡wp8.1升級到棱鏡6 UWP
- 29. 無法使用「棱鏡模板包」創建棱鏡頁面
- 30. 在棱鏡模塊內顯示棱鏡模塊
如果該命令是在ViewModel中定義的DelegateCommand,並且我試圖在視圖中觸發該命令,那麼在您的示例中,「command」是什麼? –
您可以將命令分配給視圖模型的DelegateCommand。或者只是做一些事情:'myViewModel.MyCommand.Execute(null);'。請參閱 - http://msdn.microsoft.com/en-us/library/ff654130.aspx –