c# – WPF MVVM怀疑
你好StackOverflow用户(或Stackoverflowers?):
我正在通过编写WPF来学习.我阅读了几篇文章/看过几个截屏视频,并且来自WEB开发背景,我启动了VS2010并开始做一个示例应用程序,这将帮助我学习基础知识. 我也读了一些关于MVVM的内容,并开始使用它.我设置我的解决方案使用WPF 4.0,ActiveRecord 2.1和SQLite,一切都很顺利.但我还是有些疑惑: >我创建了一个MainWindowViewModel,并使用here中的RelayCommand类来…中继命令.我是否通过从MainWindow使用MenuItem将其命令绑定到此viewmodel的属性来破坏任何准则? 像这样的东西: public class MainWindowViewModel { private ObservableCollection<Order> openOrders; private Address deliveryAddress; private Order newOrder; /* Wrappers for the OpenOrders Collection */ /* Wrappers for Delivery Address */ /* Wrappers for New Order */ /* Command Bindings */ } TIA! 解决方法
不,你没有违反任何准则.将MenuItem绑定到MainWindowViewModel的命令是完全合适的(无论如何你还会把这个命令放在哪里?)
当然,创建一个新的ViewModel是完美的.至于创建一个新视图,它取决于你如何创建它……你当然不应该从ViewModel显式地实例化一个视图,因为它会引入VM对视图的依赖.
这取决于你的意思“换行”…你的MainWindowViewModel可以通过属性公开其他ViewModel,这些VM将显示在视图的不同部分.如果这就是你的意思,是的,你应该把它们包起来. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |