天天看点

表单设计器的简单思路

    这样设计的思路很简单:由WPF设计器产生一个XML文件,然后将这个XML文件保存起来,然后在Asp.net MVC项目根据条件查找出XML表单,随后将它解析成HTML。

    这种方式的优点是:由于有一个WPF的客户端设计器,用户在制作表单的时候就会比较方便。不会存在浏览器上设计表单的诸多问题。

    这种方式的缺点是:设计出来的表单是XML的,还需要转换成HTML,转换和定位都非常麻烦。

    看下那篇文章的XML结构:

    这个文件中的div使用了绝对布局,这样的方式固然问题多多,但是在我还没想到更好的办法之前,我还是使用这种方式去生产表单,以便能继续下去。其实使用table就可以用不着div的绝对布局了,只是我还没有找到在WPF设计器上画Table的方法。

   下面看下这种思路的一个简单的Demo:在WPF设计器中设计一个登陆界面表单,然后在MVC中解析这个表单。

    我实现的这个WPF表单设计器的界面如下图,有点类似VS。上边是菜单,左边是工具栏,中间是设计区,右边是属性框。

<a href="http://images.cnblogs.com/cnblogs_com/zhuqil/WindowsLiveWriter/WPF_2379/ppp_2.png"></a>

通过拖拽设计一个登陆界面:

<a href="http://images.cnblogs.com/cnblogs_com/zhuqil/WindowsLiveWriter/WPF_2379/ppp2_2.png"></a>

使用下面代码,将界面上的元素转化成XML。

在Asp.net MVC项目中使用下面代码将XML转换成HTML:

总结:本文主要是讲述了实现一个表单设计器的简单思路。如果有什么疑问,或者更好的办法(最好能有Demo),欢迎能一起讨论。

本文转自麒麟博客园博客,原文链接:http://www.cnblogs.com/zhuqil/archive/2010/08/20/wpf-form-designer.html,如需转载请自行联系原作者