none
如何让 DesignSurface 扩展实现:撤销重做并且支持源码输出、编译? RRS feed

  • 问题

  • public class UndoEngineExt : UndoEngine{}

    这是一个可撤销重复的扩展类。

    public class CodeDomHostLoader : CodeDomDesignerLoader

    这是一个可编译、生成代码的扩展类。

    现在的主要问题是:如何将两个合并?

    在:DesignSurface的扩展类中,如要实现撤销重做(由于 UndoEngine 类需要 ComponentSerializationServiceIComponentChangeService,因此其仅在设计时可用。

    但是在this.BeginLoad(new CodeDomHostLoader ()); 又不能先添加这两个服务。我疑惑了2天,请问该如何实现?

    我目前的情况是:可以实现源码生成,也可以撤销重复,可就是没办法同时做。


    Vseen
    2010年8月13日 1:41