我正在使用这篇文章和其他资源慢慢学习WPF .
我专注于应用程序逻辑 - 定义模型+ viewModel,并创建对这些操作的命令.我还没有看过视图和.xaml格式.
当我在处理逻辑时,我希望有一个视图可以渲染我绑定到它的任何viewModel.观点应该
string属性渲染为文本框,并将文本框绑定到属性在维护MVVM设计模式的同时,这样的事情是否可行?如果是这样,我将如何实现它?此外,文章建议避免使用代码.xaml隐藏 - 这个视图可以在纯xaml中实现吗?
我认为只有XAML才有可能.如果要在运行时生成视图,则必须在ViewModel上使用反射并相应地生成控件.如果要在编译时生成视图,则可以在构建时使用某些模板引擎(如T4或字符串模板)或CodeDom从ViewModel生成xaml文件.或者你可以更进一步,有一些元数据格式(甚至DSL),你将从中生成模型和视图等.这取决于您的应用需求.
而且在MVVM中,代码隐藏对于可视逻辑和对模型/视图模型的绑定是好的,这些只能在XAML中完成.