惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
P
Proofpoint News Feed
D
DataBreaches.Net
D
Docker
云风的 BLOG
云风的 BLOG
大猫的无限游戏
大猫的无限游戏
月光博客
月光博客
J
Java Code Geeks
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
罗磊的独立博客
Martin Fowler
Martin Fowler
U
Unit 42
Engineering at Meta
Engineering at Meta
IT之家
IT之家
Vercel News
Vercel News
B
Blog RSS Feed
人人都是产品经理
人人都是产品经理
博客园 - Franky
博客园 - 【当耐特】
Stack Overflow Blog
Stack Overflow Blog
G
Google Developers Blog
MongoDB | Blog
MongoDB | Blog

博客园 - SuperBowl

新蛋(成都)急聘.net 高级软件工程师 NetTiers模板中各个选项的一些解释 敏捷实践--个人与过程 敏捷实践--持续集成工具CC.net配置 .net4.0 & VS2010 敏捷实践--用户故事和用例的选择 .Net 常用开发工具 敏捷实践--准备 敏捷实践--启航 敏捷软件开发之持续集成 6,Composite UI Application Block (CAB) WorkItem介绍 4,Composite UI Application Block (CAB) FormShellApplication介绍 (转)2007年IT薪资调查 IT人更关注职业前途 3,Composite UI Application Block (CAB) 结构介绍 2,Composite UI Application Block (CAB) 概念和术语 1,Composite UI Application Block (CAB) 介绍 很想提笔写点什么 读完“影响力” Hello ,Atlantic
5,Composite UI Application Block (CAB) WorkSpace介绍
SuperBowl · 2008-01-27 · via 博客园 - SuperBowl
 

通过前面的介绍我们可以知道在静态Main方法中执行继承自FormShellApplication的对象实例可以进行很多框架的初始化工作,如加载模块,加载服务等。从FormShellApplication的类型定义中:

public abstract class FormShellApplication<TWorkItem,TShell> : WindowsFormsApplication<TWorkItem,TShell> where TWorkItem : WorkItem where TShell : Form

可以看到,需要两个类型参数,一个是WorkItem,一个是FormFormShellApplication在进行初始化工作的时候会对这两个类型进行实例化。并且会将Form类型的实例 Show出来。这里的Form类型的实例即是我们应用程序的主界面。

主界面将是用户与系统的主要交互区域。他将做为一个容器,承载其他的业务界面。

CAB中提供了WorkSpace组件,他作为用户控件和SmartPart控件的显示容器,可以以各种各样的统一的显示方式呈现业务界面。也就是说WorkSpace可以以不同的风格呈现其中的用户控件。WorkSpace支持显示,隐藏,激活和关闭其中的用户控件。当然,CAB目前提供了几种默认的显示风格,接下来我们将一个一个介绍,如果开发人员觉得这些显示风格还不够用,当然也可以自己进行扩展。

所有类型的WorkSpace都是实现了接口IWorkSpace的。

目前CAB提供的WorkSpace有:

WindowWorkspace

MdiWorkspace

TabWorkspace

DeckWorkspace

ZoneWorkspace

下面就来说说每种WorkSpace的特点:

1, WindowWorkSpace

WorkSpace能将你需要在其中显示的用户控件在一个WinForm中显示出来,我们可以通过和该WorkSpace对应的WindowSmartPartInfo来设置用户控件的显示属性,如标题信息,是否是模式窗口等。

2, MdiWorkspace

WorkSpace是在WindowWorkSpace的基础上发展而来的,他同样将一个用户控件在单独的Form中进行显示,并且,他还将以MDI的形式显示和管理其子窗体。对应用户控件的显示信息的设置是通过设置smartPartInfo,然后作为参数传入WorkSpaceShow方法。

3, TabWorkspace

WorkSpace能将你需要在其中显示的用户控件以Tab页的形式显示出来,我们可以通过和该WorkSpace对应的TabSmartPartInfo来设置用户控件的显示属性,如标题信息。

4, DeckWorkspace

WorkSpace将以类似于重叠的卡片的形式来显示用户控件,当前激活的界面将在卡片的最上方。卡片的数序是由Workspace进行管理。没有和该WorkSpace对应的SmartPartinfo.

5, ZoneWorkspace

WorkSpace将以平铺的方式显示用户控件,比如类似OutLook的界面,可以将一个界面划分成多个Zone,每个Zone都是作为呈现用户控件的一个容器。同样的,我们可以通过设置ZoneSmartPartInfo来设置用户控件在WorkSpace中的显示属性。