开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 6220|回复: 0

[Winforms使用教程]增强的MVVM功能

[复制链接]

0

精华

8

贡献

1768

赞扬

特约版主

帖子
583
软币
4524
在线时间
275 小时
注册时间
2019-2-21
发表于 2020-5-15 10:10:57 | 显示全部楼层 |阅读模式

下载DevExpress v20.1完整版

全新的服务

MVVM模式建议您将数据管理代码与UI分开——在独立于View的ViewModels中,这意味着如果您需要以标签的形式打开View,或关闭当前打开的对话框,或在View层上执行其他任何操作,则执行这些操作的ViewModel代码应独立于View。换句话说 "open a new tab" 命令不应引用View控件实例,相反应用程序应该能够自动定位适合该操作的UI元素(例如,显示标签的Document Manager组件)。

DevExpress MVVM Framework允许您在服务的帮助下实现此逻辑,您需要做的就是注册适当的Service,然后在ViewModel中调用其公共方法。框架将自动找到合适的View控件,并将Service方法“转换”为特定的控件命令。

使用v20.1,我们通过三个附加服务扩展现有服务集合:

  • WindowService - 允许您将Views作为单独的XtraForms,RibbonForms或Flyouts打开。
  • CurrentWindowService - 允许您从ViewModel层管理窗口(窗体),该服务提供更改表单窗口状态或关闭任何激活窗口的方法。
  • CurrentDialogService - 使用此服务来管理打开的对话框,允许您关闭具有特定DialogResult的对话框。
新教程演示模块

对于不熟悉其基本概念的人而言,MVVM可能具有挑战性。 为了简化学习过程,技术团队在“ MVVM Best Practices”演示中添加了“ Simple ToDo Application”模块。该模块使用一个示例应用程序来演示基本的MVVM概念,例如数据绑定和ViewModel通信。 "Walkthrough" 演示将过程分解为"bite-sized"的步骤,每个步骤都提供描述和相关代码,因此您可以轻松地跟踪空表单如何变成视图、数据管理代码如何成为ViewModel类、以及各个单独的层相互通信。


DevExpress 5月线上公开课报名火热开启,教你入门报表(Report)控件

DevExpress技术交流群2:775869749      欢迎一起进群讨论


回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-11-21 21:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表