原文:WPF MVVM模式中,通过命令实现窗体拖动、跳转以及显隐控制
在WPF中使用MVVM模式,可以让我们的程序实现界面与功能的分离,方便开发,易于维护。但是,很多初学者会在使用MVVM的过程中遇到一个显而易见且无法回避的问题,那就是不同的窗体之间如何跳转?很多人在介绍MVVM的使用时,都没有明显提到该如何解决这一问题,不知是因为觉得太简单了还是其他原因。
博主根据自己的开发经验,写了一个简单的示例程序,介绍MVVM模式中,如何通过命令来控制窗体的跳转、拖动与显隐控制。
先看效果:
主窗体中只有一个按钮,点击该按钮后,可以打开新的窗。
新窗体可以为自定义样式窗体,鼠标拖动标题框,可以拖动整个窗体,点击关闭按钮,窗体隐藏。
下面是实现操作:
1.定义命令类ActionCommand.
使用MVVM模式的第一步,就是要实现自己的命令类。
2.在App.xaml中定义窗体导航实现代码以及窗体操作命令
3.在主窗体中使用ShowCommand命令来实现窗体导航。
4.在自定义窗体CustomWindow.xaml中使用命令来实现窗体拖动和显隐控制。
为了使得Grid中的MouseMove事件能够响应命令绑定操作,导入blend中的类库:System.Windows.Interactivity.dll。并在页面中导入xml命名空间:xmlns:i="http://www.sychzs.cn/expression/2010/interactivity"。这样就可以实现WPF中任意事件的命令响应。
通过以上步骤操作,我们便可以实现窗体之间的导航以及自定义窗体的拖动控制以及显隐控制。
完整代码下载:http://www.sychzs.cn/detail/tianwenxue/9078205。
本文原创,转载请注明出处。
-->