MultiRow发现之旅(三)- 模板管理器和Table

前文回顾

MultiRow发现之旅(一)- 高效模板设计器

MultiRow发现之旅(二)- 详解属性管理器

 

模板管理器

当模板中Cell比较多的时候,你往往会眼花缭乱,这时“模板管理器”就特别有用。请点击该工具栏中的第一个按钮,就能打开“模板管理器”工具窗口了(通过点击VisualStudio菜单的“视图”-->“其它窗口”-->“模板管理器 6.0”也能打开,“属性管理器”及“NamedCellStyle 管理器”类似):

这是一个标准的VisualStudio工具窗口,所以你可以把它放到任意地方,比如与“解决方案资源管理器”窗口一起停靠在VisualStudio的右边,“属性”窗口的上面。

“模板管理器”类似于VisualStudio的“文档大纲(Document Outline)”窗口,它有4大主要功能:

1、 通过这个窗口,你可以一览当前模板中的所有元素(Template\Section\Cell)以及它们之间的关系。窗口中所有元素都按照它们的父子关系及索引顺序排列。

2、 通过它选择某个元素,并通过右键菜单做剪切\删除\重命名等操作。

3、 通过点击窗口中工具栏上的向上箭头和向下箭头改变Cell的索引。当然,你更可以直接拖拽Cell到你想要的索引位置、甚至是其它Section中。

4、 点击工具栏上最右边的“设置”按钮来配置MultiRow模板设计器(通过点击VisualStudio菜单的“工具”-->“选项”打开“选项”对话框并在左边选择“MultiRow 6..0 模板设计器”也可以)。

这里提供了MultiRow 模板设计器的部分外观以及操作方式的设置。比如你可以设置Cell的对齐方式为Grid,这时Section的背景会显示一些对齐用的点,而当你拖拽元素的时候,元素会吸附到点上而不是其它元素上。

 

Table

MultiRow最大的特点是自由布局,所以MultiRow的模板设计器的操作就像Form设计器一样是以Cell为单位的。但很多时候,你需要的模板中间有很大一片区域就是一个方方正正的标准表格,如果要一个一个Cell的拼出这样一个表格的话,是不是太麻烦了?没关系,MultiRow的模板设计器早就考虑到了你的这种用例,并提供了一揽子解决方案,这就是“Table”。

创建Table

现在请新建一个空白模板,并打开“工具箱”中的“设计时组件 6.0”选项卡,选择“Table”:

然后在Row上按下鼠标左键,拉出一片区域再放手,看看发生了什么?

理解Table

Table是只有在设计时才存在的概念,在运行时实际上就是一堆离散的Cell,而Table只是把这些Cell作为一个整体来管理而已;此时,Table有行和列的概念,Table中的Cell必需与Table的行/列对齐。

Table模式

当你点击Table里面时,Table将进入另外一种编辑模式——Table模式:

在这种模式下,Table好像就像和外面的世界分离了,你对Table内部的操作都将把Table视为上下文环境。比如按’Tab’键只会在Table内部循环,按’Ctrl’ + ‘A’只会选中Table中的所有Cell。

而一旦进入Table模式, Table就会显示虚拟的行头和列头,你可以像操作Excel一样选择一个或多个行/列,调整它们的高度/宽度,或在“属性”窗口中设置它们的宽度/高度;当然,你也可以使用右键菜单做更复杂的操作,比如插入一列:

你注意到右键菜单上有“合并”、“拆分”菜单项了吗?没错,Table完全能够像Excel那样合并/拆分单元格:

Table中的Cell默认都是TextBoxCell,如果你需要其它类型的Cell,你可以使用右键菜单把你选择的Cell置换成其它类型(同样,你也可以在置换Table外面的Cell)。新的Cell仅仅保留基类Cell的属性值,而旧Cell上特有属性的值将被丢弃。

例如:将一个TextBoxCell的MaxLength属性和ReadOnly属性都设了值,而后置换为ComboBoxCell,尽管ComboBoxCell也有MaxLength属性,但是由于MaxLength属性不是定义在基类Cell上的,所以ComboBoxCell的MaxLength将保留默认值,但是ReadOnly属性会和旧的TextBoxCell保持一致。

Table中的Cell也可以删除,被删除的区域将以灰白相间的格子图案来表示,被删除的区域可以选择,选择后可以使用“置换”操作重新放上Cell。

使用Table一个最为重要的便利就是设置外圈边框:按’Control’+’A’ 选择Table中所有Cell,或者选择一个矩形区域的Cell,然后点击右键菜单中的“边框”菜单项,这时就会弹出“边框”编辑器,边框类型选择“圆角边框”或者普通边框,注意比较和其它地方弹出的“边框”编辑器有什么不同?

没错,这个编辑器多了“内部”的按钮,由于对于MultiRow来说,每一个Cell都是一个独立的单元,所以Cell只有外边框,没有内边框;即使你在Table外面把Cell紧靠在一起摆成一个表格再设边框,弹出的边框编辑器也是没有“内部”按钮的。

照上图的样式设置好边框,点击Table外面的区域,看看边框的样子(这里顺带说一句,MultiRow中边框的每一条边的颜色、线型、角度都是可以单独设置的):

Cell模式

当点击Table外面的区域或者Cell退出Table模式后,Table进入Cell模式。

此时,设计器将Table看做一个整体的元素,你可以理解为把Table中的所有Cell组成了一个进行处理。对Table的操作会影响Table中所有的Cell。你可以像单个Cell那样对它进行剪切/复制/粘帖/调整大小等操作。

对Table调整大小将使Table进行等比例缩放,但是由于Cell的大小是整形的,所以有可能导致原来大小相同的Cell缩放后大小出现偏差:

图中第三行的Cell比第一行和第二行高1个像素点。

在Cell模式下,点击Table的边线周围(大概5个Pixel,此时光标将变为四个方向都有箭头的SizeAll)将选中整个Table。此时,拖拽将导致整个Table移动;而右键菜单将比其它Cell多了个“拆分成自由Cell”的菜单项,点击它后,整个Table将被拆分成自由Cell:

注意:被拆分后的Cell不能再重新组合成Table,除非使用“撤销”操作或者重新创建一个Table。

 

MultiRow下载、安装及其它

安装包下载:http://gcdn.grapecity.com/showtopic-786.html

说明1:试用期限不是30天,而是20个使用日。这样更有利于您安排试用时间。

说明2:安装MultiRow时就会自动安装MultiRow模板设计器。由于安装程序会重新配置你系统中所有的VisualStudio,所以如果你系统中安装的VisualStudio较多的话,安装过程可能需要你等待几分钟。

说明3:请确保你的VisualStudio是Visual Studio2005 SP1及以上的正式版本,MultiRow模板设计器无法工作在Visual Studio Express Edition上。

如果您有什么问题、有什么建议、或者找到了Bug,欢迎到MultiRow官方论坛提问:http://gcdn.grapecity.com/

时间: 2024-10-23 13:56:40

MultiRow发现之旅(三)- 模板管理器和Table的相关文章

MultiRow发现之旅(六)- 使用MultiRow开发票据应用(附源码)

前文回顾 MultiRow发现之旅(一)- 高效模板设计器 MultiRow发现之旅(二)- 详解属性管理器 MultiRow发现之旅(三)- 模板管理器和Table MultiRow发现之旅(四)- 使用MultiRow开发WinForm应用(附源码) MultiRow发现之旅(五)- MultiRow版俄罗斯方块(exe + 源码)   本文将使用MultiRow实现票据开发功能,模拟大家都很熟悉的"中国移动通讯公司"的展示发票.效果图如下: 打印为xps格式并用XPS Viewe

MultiRow发现之旅(七)- 套打和打印

前文回顾 MultiRow发现之旅(一)- 高效模板设计器 MultiRow发现之旅(二)- 详解属性管理器 MultiRow发现之旅(三)- 模板管理器和Table MultiRow发现之旅(四)- 使用MultiRow开发WinForm应用(附源码) MultiRow发现之旅(五)- MultiRow版俄罗斯方块(exe + 源码) MultiRow发现之旅(六)- 使用MultiRow开发票据应用(附源码)     前面的一些文章介绍了如何使用MultiRow设计模板,以及完成一个简单的数

MultiRow发现之旅(五)- MultiRow版俄罗斯方块(exe + 源码)

前文回顾 MultiRow发现之旅(一)- 高效模板设计器 MultiRow发现之旅(二)- 详解属性管理器 MultiRow发现之旅(三)- 模板管理器和Table MultiRow发现之旅(四)- 使用MultiRow开发WinForm应用(附源码)     之前的文章讨论了不少MultiRow技术细节,相信大家都有点累了,今天轻松轻松,玩玩游戏,看你能玩到多少分.   俄罗斯方块(MultiRow版)1.0游戏界面如下:   玩法: 左右键控制方向. 上键顺时针旋转. Shift键逆时针旋

MultiRow发现之旅(一)- 高效模板设计器

在这篇博客中我将向大家介绍一个集成在VisualStudio中的很酷很给力的设计器--MultiRow模板设计器.它与VisualStudio无缝集成,提供与VisualStudio一脉相承的设计体验,可以使用VisualStudio提供的各种窗口.菜单命令等,你可以像使用WinForm设计器一样使用它.所以本系列博客将重点介绍一些很酷的功能. 尽管该设计器是专门为MultiRow产品开发的,想学习.试用MultiRow产品的朋友们固然不容错过,但是相信对其他朋友们也有很大的借鉴作用. 创建模板

LastPass已采取措施阻止针对密码管理器的网页钓鱼攻击

安全研究员Sean Cassidy最近发现有针对热门密码管理器LastPass的钓鱼攻击,而这件事也已经引起了后者的注意.为了帮助减轻被钓鱼的风险,LastPass决定增加额外的步骤.Cassidy所说的"LostPass攻击",是指在浏览器上显示的LastPass信息很容易伪造,在将受害者引诱至一个精心编造的恶意站点后,终端用户很难分辨它们的真假. 如果用于已经安装了LastPass,那么攻击者就会伪造一个登录过期的通知,欺骗用户需要重登陆.然后,它只需要静静等待用户输入登录凭证.即

LastPass密码管理器曝出重大漏洞 请速升级你的Firefox附加组件

专注查找漏洞的一名安全研究人员,已经发现了知名在线密码管理器LastPass的一个潜在风险,攻击者可借此接触到用户的线上账户.万幸的是,LastPass已经修复了这个让攻击者远程访问数百万账户的所谓"零日漏洞",据说用户在访问一个特定恶意站点时就会中招.The Register指出,白帽研究者Tavis Ormandy率先证实了这个问题. 其实不止LastPass,任何云密码存储服务都有风险. Ormandy在推文中写到,他已经向LastPass发去了完整的报告,接下去将继续为其竞争对

RSS阅读器:从订阅到发现之旅?

zhengyun 20070805 曹增辉在<RSS阅读器:工具化还是媒介化>提出了对抓虾新动作的定义:"对于抓虾这次调整的思路,不少人将之归结为"社区化",其实,我觉得说是"媒介化"更准确一点". 那么媒介化是不是可以理解为"从订阅走向发现之旅"呢? 如果是这样,那么这个概念和"从搜索到发现之旅"是一样,都是着眼于从用户主动行为(搜索关键词.订阅RSS)到系统帮助用户找到潜在资源.  林嘉澍在

详解Visual Studio 2010中的扩展管理器

扩展能够为核心应用程序提供附加的功能或者自定义设置.在很多应用程序中这都是很流行的,包括流行的web浏览器IE和Firefox.微软的Office.媒体播放器.Photoshop.Eclipse.Visual Studio等等.其中有些可能比较新奇,而针对开发工具--像Eclipse和Visual Studio--的扩展让开发者的生产力得到了显著提高. Visual Studio早期的版本是构建在COM技术之上的.而Visual Studio的主要扩展方式插件是通过COM接口实现的.随着时间的变

shiro和spring集成时session管理器超时时间问题

问题描述 shiro和spring集成时session管理器超时时间问题 这是我的配置文件,我配置了并发人数控制和动态权限过滤,然后session超时时间这里也是配置了的,然后并没有什么鸟用,在登录以后获取超时时间也是正常的,但还是1分钟就过期了. <?xml version="1.0" encoding="UTF-8"?> xmlns:util="http://www.springframework.org/schema/util"