前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MultiRow发现之旅(三)- 模板管理器和Table

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

作者头像
葡萄城控件
发布2018-01-10 10:20:14
8120
发布2018-01-10 10:20:14
举报

前文回顾

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

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

模板管理器

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

clip_image002
clip_image002
clip_image004
clip_image004

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

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

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

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

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

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

clip_image006
clip_image006

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

Table

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

创建Table

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

clip_image002[5]
clip_image002[5]

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

clip_image004[5]
clip_image004[5]

理解Table

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

Table模式

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

clip_image006[5]
clip_image006[5]

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

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

clip_image008
clip_image008

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

clip_image010
clip_image010

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,然后点击右键菜单中的“边框”菜单项,这时就会弹出“边框”编辑器,边框类型选择“圆角边框”或者普通边框,注意比较和其它地方弹出的“边框”编辑器有什么不同?

clip_image012
clip_image012

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

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

clip_image014
clip_image014

Cell模式

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

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

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

clip_image016
clip_image016

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

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

clip_image018
clip_image018

注意:被拆分后的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/

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2010-12-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前文回顾
  • 模板管理器
  • Table
    • 创建Table
      • 理解Table
        • Table模式
          • Cell模式
            • MultiRow下载、安装及其它
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档