编写简易IDE

由于最近工作不是很多;索性又写了一个简易性的IDE;很多功能还在完善中。

工具主要有SQL设计器、Form设计器、代码设计器构成

界面原理:

采用MS的DesignSurface组件实现界面设计器;在通过DesignSurface生成界面的XML;并对XML进行解析;再通过反射生成界面组件

以下是部分代码

ype rootComponentType = typeof(Form);
DesignSurface ds = new DesignSurface();
IDesignerHost host = (IDesignerHost)ds.GetService(typeof(IDesignerHost));
host.CreateComponent(typeof(Form));
Control c = ds.View as Control;
c.BackColor = Color.White;
c.Dock = DockStyle.Fill;
this.Controls.Add(c);

 

代码原理:

主要采用IronPython和.Net交互;并代用自己写的API

以下是部分代码

ScriptEngine engine = Python.CreateEngine();
ScriptScope scope = engine.CreateScope();

ScriptSource source = engine.CreateScriptSourceFromString(TxtCode.Text, SourceCodeKind.Statements);
source.Execute(scope);

 

其他功能如导出到Excel等;

接下来会完善工具菜单下的功能:

1.根据数据字典生成界面

2.根据SQL生成界面

3.根据已经设计的界面动态生成代码

4.根据DataTable反射动态赋值等

5.增加保存到数据库功能

6.等等

下面是截图

posted @ 2013-05-28 16:56  IvanDesign  阅读(3690)  评论(2编辑  收藏  举报