我是新來的MVVM模式,我想寫我自己的自定義命令。編寫自定義命令的最佳方法是什麼? (我在這裏和那裏閱讀了很多文章,但無法獲得創建我的命令的想法)。特別是如果有人可以幫助我創建一個命令的想法,單擊一個按鈕後,從一個ListView中獲取項目並將其放入另一個。 (列表視圖綁定到ObservableCollection)。提前致謝!如何創建我自己的自定義命令
0
A
回答
0
只需實現ICommand接口。網絡上有很多甚至在nuget包中實現。用ICommand搜索RelayCommand或DelegateCommand,你會發現很多實現。完成後,您只需將命令中的虛擬機私有方法包裝好即可。例如
ICommand startTestCommand;
public ICommand StartTestCommand { get { return startTestCommand ?? (startTestCommand = new RelayCommand(StartTest)); }
private void StartTest()
{
//This will execute if the Command is bound in XAML
}
要在XAML綁定命令(假設你的視圖模型的數據上下文)剛剛綁定無論你的命令被稱爲按鈕「StartTestCommand」或Command屬性。
因此,本質上你不會爲你所要求的「創建你自己的命令」,而是包裝一個Command中介的委託來處理阻止耦合。有理由創建你自己的命令,但我會建議使用那裏的東西。
0
你只需要實現接口ICommand
。大多數MVVM框架都有一個通用的基於委託的命令類來實現它(例如,MVVM中的RelayCommand
)。您只需將方法傳遞給其構造函數即可。
相關問題
- 1. 定義我自己的命令
- 2. 如何在ESP8266模塊中創建自己的自定義AT命令?
- 3. 如何創建我自己的Jaxb2RootElementHttpMessageConverter自定義版本?
- 4. 如何創建我自己的自定義按鈕?
- 5. 如何創建我自己的自定義地圖
- 6. 如何創建我自己的插件作曲家命令
- 7. 如何在linux中創建我自己的命令
- 8. 自定義命令的創建
- 9. 的Doxygen - 創建自定義命令
- 10. 創建自己的unix命令
- 11. 自定義UITableViewCell重新創建自己
- 12. 如何用自己的控件創建自定義的GTK#Widget?
- 13. 創建zf自定義命令,如zf創建表單
- 14. 創建我自己的自定義標記(JSF 2.0)的問題
- 15. 如何創建自己的自定義轉換
- 16. 如何在mediawiki中創建自己的自定義組?
- 17. 我如何創建我自己的自定義功能Closure模板在Plovr
- 18. 難以創建我自己的自定義視圖
- 19. 創建我自己的自定義JQuery模板引擎?
- 20. 如何在金字塔1.4中創建自己的命令1.4
- 21. Tmux複製模式:如何創建自己的命令?
- 22. 如何創建我自己的setSVMDetector?
- 23. 如何創建我自己的sap.suite.ui.generic.template.ObjectPage
- 24. 我如何創建自己的clasiifier
- 25. 如何創建我自己的加密?
- 26. 如何創建我自己的承諾?
- 27. 如何創建我自己的UITabBar?
- 28. 如何創建我自己的RecommenderJob?
- 29. 如何創建我自己的ListView UserControl?
- 30. Node.js&npm:如何創建自定義npm cli命令?