通过开源项目SHARPDEVELOP项目的核心框架的学习分析说明基础管理框架的抽象设计。
先把这几天面向接口编程的学习小结一下,C#语言关于接口编成的内容:
1、接口允许多继承,类只能继承与一个基类,但是可以从一个基类、多个接口派生;
2、接口只是定义说明,并不具体实现,提供组件/模块之间的交互规范。
3、接口描述一个系统中相对稳定部分的结构,是系统的最高层抽象。

抛开菜单管理器具体的菜单项、工具条的功能按钮、面板内具体的内容、视图的具体内容,将所有具体

GUI内容的操作抽象成为一组抽象的内容接口(contentinterfaces),试图通过接口来定义基础管理框架管

理界面的GUI高层抽象。

每个视图或者面板包含的内容可能拥有的一组接口:
1,ICanBeDirty
     定义视图内容的变化标志IsDirty,和变化事件DirtyChanged。在工作台管理器的保存视图内容事件

中调用。
2,IClipboardHandler
     定义视图内容是否可以剪切、复制、粘贴、删除、全选状态剪切、复制、粘贴、删除、全选方法。

在文本编辑器的实现中会大量被调用。
3,IContextHelpProvider
     定义对内容提供帮助的方法。在按“F1”键时,会调用。
5,IMementoCapable
     定义创建新GUI对象记忆和恢复GUI对象记忆方法。
6,IPrintable
     定义打印文档属性,打印设置,打印调用方法。
7,IUndoHandler
     定义是否可以继续Undo,是否可以继续Redo属性,和Undo,Redo方法。
8,IViewContentMemento
     定义创建新视图内容对象记忆和恢复视图内容对象记忆方法。
 

下面介绍框架核心“视图”的理解:


在windows标准窗体中,视图是的工作是用来做具体事情,视图是可以作为一个文件进行保存,如果打开

多个 视图,那么在关闭工作台窗体之前,需要通知非活动的视图保存,而每个视图是否需要保存则由是

否修改标识来记录。


因此,视图接口在GUI的抽象是这样来定义的 :
1,IViewContent 继承IBaseViewContent,ICanBeDirty

    }


2、IBaseViewContent
 

 1基础框架平台——基础管理框架——GUI抽象设计(视图)  public interface IBaseViewContent
 2    }

3、ICanBeDirty

 

 1        }



4,ISecondaryViewContent

    }

 

 

请园子里的各位大哥,给小弟一些指点。我这样理解
 


 

相关文章:

  • 2021-12-06
  • 2021-11-04
  • 2021-08-05
  • 2021-12-12
  • 2022-12-23
  • 2022-02-18
  • 2021-12-06
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-30
  • 2021-06-07
  • 2021-11-11
相关资源
相似解决方案