Spread for Windows Forms快速入门(5)---常用的单元格类型(下)

简介:

在上一篇,我们介绍了常用了文本类型单元格。除了文本型单元格外,Spread还支持如下13种图形单元格类型:组合框单元格、按钮单元格、复选框单元格、超链接单元格、进度条单元格、条码单元格、颜色选择器单元格、图片单元、列表框单元格、复合列组合框单元格、复合选项单元格、富文本单元格、滚动条单元格等。下面我们介绍前五种的基本用法。

组合框单元格ComboBoxCellType

你可以使用一个组合框单元格以显示一个可编辑的下拉列表,用户通过在显示的列表中进行选择完成对值的输入。你可以指定项目的列表是否包括显示伴随文字的图标,同时也可以指定在任何时候都显示的数字,以及单元格是否对用户来说是可编辑的。

仅文本

文本以及图标

clip_image002[4]

clip_image004[4]

自定义列表外观

这里总结了你可以自定义组合框外观的若干属性。

属性

描述

BackgroundImage

这个属性可以让你设置一张图,用于显示组合框的可编辑部分的 背景。

ButtonAlign

这个属性可以让你设定按钮的显示位置。

ImageList

这个属性可以使你设置组合框中下拉菜单里面的文本旁边显示的图标。

ItemData

这个属性可以使你为组合框的下拉菜单设置项目的数据,此数据与显示的项目不同。

Items

这个属性可以让你为组合框的下拉菜单设置项目。

ListAlignment

这个属性可以让你设置设置列表对齐到单元格上的哪一边。

ListOffset

这个属性可以让你设置从单元格的对齐边开始计算 列表有多少像素的偏移。

ListWidth

这个属性可以让你设置下拉列表的宽度(以像素计算)。

MaxDrop

这个属性可以让你设置在列表中每次最多显示的项目数。如果 有更多的项目要显示,列表框就会显示垂直滚动条。

MaxLength

这个属性可以让你设置在组合框中允许显示的最大字符数。

自定义列表的操作

这里有一个操作属性的集合,你可以通过他们自定义组合框。

属性

描述

AcceptsArrowKeys

设置组合框控件如何处理方向键。

AutoSearch

设置组合框中如何根据输入的一个关键字符来搜索列表的项目。

CharacterCasing

设置文本单元格中的大小写。

CharacterSet

设置文本单元格中所允许使用的字符。

Editable

设置你是否可以在组合框中的可编辑区域键入数据。

EditorValue

设置向底层的数据模型写入的值。

ListControl

如果你不想使用Spread内置的列表控件 ,可以设置组合框控件中的列表部分来代替。

Spread控件中包括为按钮单元格和组合框单元格提供了一个ButtonDrawMode属性。这个属性授权你在当前列,行,或单元格中一直显示一个或若干个按钮。

下面的代码示例创建了一个组合框单元格,列出了1到6月的英文名,并允许用户输入其他值:

FarPoint.Win.Spread.CellType.ComboBoxCellType cmbocell = new FarPoint.Win.Spread.CellType.ComboBoxCellType();

cmbocell.Items = (new String[] {"January", "February", "March", "April", "May", "June"});

cmbocell.AutoSearch = FarPoint.Win.AutoSearch.SingleCharacter;

cmbocell.Editable = true;

cmbocell.MaxDrop = 4;

fpSpread1.ActiveSheet.Cells[0, 0].CellType = cmbocell;

按钮单元格ButtonCellType

你可以使用按钮单元格在单元格中的显示一个按钮。按钮单元格缺省显示成一个默认颜色的矩形的按钮。你可以自定义文本,颜色以及按钮图样并且指定点击时触发的某个行为。

clip_image006[4]

自定义按钮外观

按钮可显示文本、图片、或者都显示。如果他们显示图片,你可以选择当按钮按下显示另外的一张图片。你可以自定义按钮单元格的颜色,包括边框颜色,文本颜色以及背景颜色。另外,按钮单元格可以显示三维的外观,并且你可以自定义高亮和阴影的颜色。

属性

描述

BackgroundStyle

设置背景如何被渲染。

ButtonColor

设置按钮的颜色。

ButtonColor2

当绘制一个渐变色的按钮时,设置辅助颜色的使用。

DarkColor

设置按钮底部和右端的边界的颜色(也就是显示出三维按钮中的明亮部分的颜色)。

GradientMode

设定斜度按钮的绘制风格。

LightColor

设置按钮顶部和左端的边界的颜色(也就是显示出三维按钮中的阴影部分的颜色)。

Picture

设置一幅图作为按钮的整体外观。任何GDI+位图都可以使用,比如BMP,GIF或者 JPG文件。如果你使用有两种状态的按钮,这就显示为一个未按下的状态。

PictureDown

为已经按下的按钮设置一副图。

ShadowSize

设置阴影的厚度,阴暗面和阳面的颜色(以显示出他的三维效果)。

TwoState

设置按钮函数是否显示为一个有两种状态的拨动开关。每次你点击按钮,按钮就会更改状态。

clip_image008[4]

默认情况下,按钮仅有一个状态,当且仅当指针按下时才会改变外观。你可以将按钮设置为两种状态的按钮,并且当按钮被点击时,会在两种状态之间切换。当用户点击该单元格的任意一点时,按钮就被触发。默认情况下,按钮的行为类似于开关按钮,这样你可以点击鼠标左键,并且当你松开鼠标时,按钮就会弹起。如果你愿意,按钮单元格会像切换按钮或者有两种状态的按钮一样,当你使用鼠标左键点击的时候按钮会保持按下状态。按钮为“否”当他们没有被按下时, 为“真”当他们被按下时。

自定义文本外观

你可以指定按钮单元格中显示的文本并且你可以指定文本的外观。你可以指定按钮单元格中图片旁边的文字对齐方式以及是否对多行文字进行换行操作。

属性

描述

HotkeyPrefix

设置是否显示下划线以便显示快捷键(或者热键)。

clip_image010[4]

Text

设置显示在按钮上的文本。

TextAlign

相对于一张图片设置文本的对齐方式。

TextColor

设置按钮中的文本颜色。

TextDown

如果按钮是有两个状态的按钮,当它被按下时,设置按钮的显示的文本。

TextOrientation

设置按钮上文本的方向。 请看下表显示了有关于文字方向的各种示例。

WordWrap

设置是否对文本进行自动换行操作。

除了按钮单元格本身的属性之外,你也可以通过设定FpSpread类的属性影响按钮行为。 FpSpread类有一个针对于按钮单元格以及组合框单元格的ButtonDrawMode属性。这个属性允许你总是显示一个按钮或者在当前这一列,这一行,或者这一个单元格中的若干个按钮。

在下面的示例中,创建一个蓝色的带文本的按钮。当指针被按下时,可以定义不同的显示文本。这个实例按钮显示在这个主题的开头部分。

FarPoint.Win.Spread.CellType.ButtonCellType bttncell = new FarPoint.Win.Spread.CellType.ButtonCellType();

bttncell.ButtonColor = Color.Cyan;

bttncell.DarkColor = Color.DarkCyan;

bttncell.LightColor = Color.AliceBlue;

bttncell.TwoState = false;

bttncell.Text = "Click and Hold";

bttncell.TextDown = "...now let go.";

bttncell.ShadowSize = 3;

fpSpread1.Sheets[0].Cells[0,2].CellType = bttncell;

复选框单元格 CheckBoxCellType

你可以使用复选框单元格以便在单元格中显示一个复选框,一个复选框默认地显示一个小型的复选框,此复选框选有三个状态中的一个,三个状态包括已选,未选,或者置灰。你可以通过设置文本自定义复选框,以决定复选框的操作,与此同时可以设置图片替换标准的复选框图片

自定义文本

你可以通过为每一个状态指定图片自定义复选框。默认情况下,复选框仅有两个状态,已选和未选,所以想要使用所有的三个状态,你必须使用ThreeState属性。默认的外观使用TextTrue,TextFalse和TextIndeterminate属性以显示预定义的文本。点击单元格的任何一个地方以改变复选框的状态。

clip_image012[4]

属性

描述

Caption

无视其状态,重载TextTrue,TextFalse,以及TextIndeterminate文本设置以便设置复选框中的文本。

HotkeyPrefix

设置ampersand符号是否显示以及如何在文本中显示下划线快捷键。

TextAlign

设置单元格中的文本如何根据复选框图形进行对齐。

TextFalse

对复选框中的未选状态设置文本。

TextIndeterminate

对复选框中的不确定状态设置文本。

TextTrue

对复选框中的已选状态设置文本。

自定义图片

在每个状态中,你也可以对每个复选框的状态设置自定义的图片(使其看上去更像一个按钮)。你可以根据单元格有焦点(普通)或者没有焦点(不可用),或者是否被点击(按下)来决定复选框的外观。

属性

描述

BackgroundImage

设置这个单元格的背景图片。

Picture

设置用于复选框状态的图片。

ThreeState

设置复选框是否有三种状态。

下面的示例代码创建一个三种状态的复选框单元格:

FarPoint.Win.Spread.CellType.CheckBoxCellType ckbxcell = new FarPoint.Win.Spread.CellType.CheckBoxCellType();

ckbxcell.ThreeState = true;

ckbxcell.TextTrue ="选中";

ckbxcell.TextFalse ="未选";

ckbxcell.TextIndeterminate ="不确定";

fpSpread1.ActiveSheet.Cells[0, 0].CellType = ckbxcell;

超链接单元格HyperLinkCellType

你可以使用一个超链接单元格,它包括作为单一的 超链接或者复合的超链接的功能的文本。超链接的目标可以是一个统一资源定位符(即URL)。例如:

http://www.gcpowertools.com.cn

mailto:tool-sales.cn@grapecity.com?Subject=Spread价格咨询

你可以指定有多少个文本成为超链接并且其余的显示为普通文本。你可以自定义超链接文本的外观,以及自定义已经被访问(点击)的链接的颜色。

属性

自定义操作

BackgroundImage

设置背景图片。

Link

设置目标的URL。

LinkArea

设置超链接的文本的区域。

LinkColor

设置链接的颜色(在他们被访问或者被点击之前)。

Links

设置超链接。

Text

设置超链接的标签,此标签显示在单元格中。

VisitedLinkColor

设置访问过的(点击过的)链接的颜色。

下面的示例设置了单元格的大小(通过设置列宽和行高),以便于图片适应它,定义图片的位置使其成为超链接按钮, 以及指定目标的URL。

fpSpread1.ActiveSheet.Columns[1].Width = 145;

fpSpread1.ActiveSheet.Rows[1].Height = 45;

FarPoint.Win.Spread.CellType.HyperLinkCellType hlnkcell = new FarPoint.Win.Spread.CellType.HyperLinkCellType();

hlnkcell.Text = "点击访问我们的产品网站";

hlnkcell.Link ="http://www.gcpowertools.com.cn";

hlnkcell.LinkArea = new LinkArea(4,7);

hlnkcell.LinkColor = Color.DarkGreen;

hlnkcell.VisitedLinkColor = Color.Chartreuse;

fpSpread1.ActiveSheet.Cells[1, 1].CellType = hlnkcell;

进度条单元格ProgressCellType

一个进度指示器显示了一个跨越了整个单元格的进度显示器。你可以指定填充的颜色,显示的文本,显示文本的颜色及其他属性。

clip_image014[4]

你可以使用纯色填充指示器,默认情况下,只会单独显示指示器,如下图所示。

clip_image016[4]

你可以通过设置以下的属性自定义单元格中的进度指示器的显示与操作,比如设置不同的文本,显示不同的背景图,定制不同的进度条颜色,甚至指定从一种颜色渐变到另一种颜色

属性

自定义操作

BackgroundImage

设置这个单元格的背景图片。

FillColor

设置进度指示器填充部分的颜色。

FillColor2

设置进度指示器渐变部分填充的第二种颜色。

FillTextColor

设置指示器的填充部分的文本颜色。

GradientMode

设置一个渐变样式进度指示器的渐变模式。

Maximum

设置用户可以输入的最大值。

Minimum

设置用户可以输入的最小值。

Orientation

设置进度条的方向。

Picture

当图片使用该样式时,设置用于进度的图片。

ShowText

设置是否显示百分比的填充的字符串。

Style

设置该进度条(或者几个进度条)的样式。

Text

当TextStyle被设置为Custom的时候,设置使用的字符串。

TextStyle

设置进度条的文本部分是否显示。

下面的示例代码创建一个红色的进度指示器单元格:

FarPoint.Win.Spread.CellType.ProgressCellType progcell = new FarPoint.Win.Spread.CellType.ProgressCellType();

progcell.FillColor = Color.Red;

fpSpread1.ActiveSheet.Cells[0, 0].CellType = progcell;



本文转自 powertoolsteam 51CTO博客,原文链接:http://blog.51cto.com/powertoolsteam/632103,如需转载请自行联系原作者

相关文章
|
2月前
|
运维 安全 Linux
使用阿里云搭建幻兽帕鲁服务器操作系统类型Windows和Linux有区别吗?
使用阿里云搭建幻兽帕鲁服务器操作系统类型Windows和Linux有区别吗?性能有差异?同配置的游戏服务器,如4核16G或8核32G配置等,选择Windows和Linux操作系统差异不太大,如果非要对比的话,Linux系统相对Windows更少占用计算资源,当然如果对Linux不熟悉的话,可以选择Windows。另外,即便是幻兽帕鲁服务器创建成功后,也是可以免费修改操作系统的
108 1
|
5月前
|
监控 C# Windows
内网桌面监控软件中的远程控制功能实现(基于C#和Windows Forms)
近年来,随着远程办公的兴起,对内网桌面监控软件的需求逐渐增加。本文将探讨如何通过C#和Windows Forms实现内网桌面监控软件中的远程控制功能,并在结尾部分介绍监控到的数据如何自动提交到网站。
279 0
|
6月前
|
程序员 API Windows
[笔记]Windows核心编程《番外篇》几种Hook类型
[笔记]Windows核心编程《番外篇》几种Hook类型
|
安全 Python Windows
windows python web flask 模板开发快速入门
windows python web flask 模板开发快速入门
windows python web flask 模板开发快速入门
|
程序员 API Windows
[笔记]Windows核心编程《番外篇》几种Hook类型
Windows核心编程《番外篇》几种Hook类型
301 0
|
Windows
命名空间“System”中不存在类型或命名空间名称“Windows”(是缺少程序集引用吗?)
命名空间“System”中不存在类型或命名空间名称“Windows”(是缺少程序集引用吗?)
命名空间“System”中不存在类型或命名空间名称“Windows”(是缺少程序集引用吗?)
|
数据安全/隐私保护 Windows
Windows 10访问局域网提示“未授予用户在此计算机上的请求登录类型”
Windows 10访问局域网提示“未授予用户在此计算机上的请求登录类型”
499 0
Windows 10访问局域网提示“未授予用户在此计算机上的请求登录类型”
|
JSON Android开发 数据格式
【Android 逆向】Android 逆向通用工具开发 ( Windows 平台静态库程序类型 | 编译逆向工具依赖的 Windows 平台静态库程序 )
【Android 逆向】Android 逆向通用工具开发 ( Windows 平台静态库程序类型 | 编译逆向工具依赖的 Windows 平台静态库程序 )
152 0
【Android 逆向】Android 逆向通用工具开发 ( Windows 平台静态库程序类型 | 编译逆向工具依赖的 Windows 平台静态库程序 )
Windows10系统上投影(仅电影屏幕,复制,拓展,仅第二屏幕)类型的作用
Windows10系统上投影(仅电影屏幕,复制,拓展,仅第二屏幕)类型的作用
190 0
Windows10系统上投影(仅电影屏幕,复制,拓展,仅第二屏幕)类型的作用
|
Windows
命名空间“System”中不存在类型或命名空间名称“Windows”(是缺少程序集引用吗?)
命名空间“System”中不存在类型或命名空间名称“Windows”(是缺少程序集引用吗?)
595 0