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

单元格类型定义了在单元格中呈现的信息的类型,以及这种信息如何显示,用户如何与其进行交互。单元格类型可以被赋给单个的单元格,整行或者整列。

用户可以使用两种不同的单元格类型对表单中的单元格进行设置: 一种是可以简单地关联于单元格的文本格式,另一种就是显示控件或者图形化信息。我们在本篇介绍常用的文本单元格类型,下一篇介绍常用的图形单元格类型。

通用单元格GeneralCellType

对于表单中的单元格而言,通用单元格是默认的单元格类型。 除非你指定了其他的单元格类型,控件通常会默认将通用单元格类型赋给单元格。通用单元格可以被用来作为键入文本或数字的单元格,在这里格式并不重要或者这里的数据类型不依赖于特定的数据类型。

下面的示例将一个单元格设为一个通用单元格。

FarPoint.Win.Spread.CellType.GeneralCellType gnrlcell =new FarPoint.Win.Spread.CellType.GeneralCellType();

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

  

文本单元格TextCellType

通过代码设置文本单元格的基本步骤和示例代码如下:

通过创建一个 TextCellType 类的实例定义一个文本单元格。

设置文本单元格的属性。

当用户输入不可用时创建一个显示给用户的信息。

通过设置一个单元格,单元格范围,一行,一列,或者样式的CellType属性为TextCellType 对象,将文本单元格类型赋给一个单元格或者一组单元格。

FarPoint.Win.Spread.CellType.TextCellType tcell =new FarPoint.Win.Spread.CellType.TextCellType();

tcell.CharacterCasing = CharacterCasing.Upper;

tcell.CharacterSet = FarPoint.Win.Spread.CellType.CharacterSet.Ascii;

tcell.MaxLength =30;

tcell.Multiline =true;

fpSpread1.ActiveSheet.Cells[0, 0].Text ="This is a text cell. ";

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

  

数字单元格NumberCellType

设置精度

典型的情况是,数字使用双精度浮点数进行计算和存储,这样精度大约在15个数位左右。 单元格可以根据需求格式化为不同的小数位数。 例如,下列的代码可以计算单元格区域A1到A5的区域的值的总和,并且将结果显示在A6单元格中 存储在A6单元格中的数值将会有足够的精确度(达到了双精度浮点数的上限),但是显示在A6单元格中的文本将会取为其最近的一位小数的值。

NumberCellType nmbcell =new NumberCellType();

nmbcell.DecimalPlaces =1;

fpSpread.Sheets[0].Cells[5,0].CellType = ct; fpSpread.Sheets[0].Cells[5,0].Formula ="SUM(A1:A5)";

  

格式化若干数字

属性


描述


DecimalPlaces


在数字的显示中设置小数的位数。


DecimalSeparator


获取或设置小数点分隔符。


FixedPoint


对定点数的显示来说,在数字的小数部分设置是否将零显示为占位符。


LeadingZero


获取或设置是否显示前导的零。


MaximumValue


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


MinimumValue


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


NegativeFormat


获取或设置负数的格式如何进行显示。


NegativeRed


获取或设定负数是否显示为红色。


OverflowCharacter


如果数字不符合显示的宽度,获取和设置替换数据的显示字符。


Separator


获取或设置用于分割千以上的数值的字符。


ShowSeparator


获取或设置是否显示千位分隔符。

下面的示例通过使用预先定义的格式化属性指派 NumberCellType 对象,对某个单元格设置成为具有某种格式的数字单元格。

FarPoint.Win.Spread.CellType.NumberCellType nmbrcell =new FarPoint.Win.Spread.CellType.NumberCellType();

nmbrcell.DecimalSeparator =",";

nmbrcell.DecimalPlaces =5;

nmbrcell.LeadingZero = FarPoint.Win.Spread.CellType.LeadingZero.UseRegional;

nmbrcell.MaximumValue =500.000;

nmbrcell.MinimumValue =-10.000;

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

  

显示分数

FractionMode属性以便以分数格式显示数值。你可以向一个单元格中键入0.01或者你可以键入1/100。两种情况都会显示为1/100。你可以使用FractionDenominatorPrecision枚举类型(例如要将分数显示为若干个四分之一,1/4等等)或者使用FractionDenominatorDigits属性设置分母的位数。下面这张表列出了所有与数字单元格相关的分数属性。


属性


描述


FractionMode


设置是否将数值显示为分数。


FractionConvertWholeNumbers


当数值显示为分数时,设置是否将整数部分转化为分数。


FractionCustomFormat


使用自定义的格式设置数值如何显示。要使用自定义的格式,请设置FractionDenominatorPrecision以便于自定义。


FractionDenominatorDigits


当数据显示为分数时,设置数字的位数。


FractionDenominatorPrecision


当数据显示为分数时,设置分数的精度。


FractionRenderOnly


当数据显示为分数时,设置是否允许分数处于编辑模式。

FarPoint.Win.Spread.CellType.NumberCellType frac =new FarPoint.Win.Spread.CellType.NumberCellType();

frac.FractionMode =true;

frac.FractionConvertWholeNumbers =false;

frac.FractionDenominatorPrecision = FarPoint.Win.Spread.CellType.FractionDenominatorPrecision.Custom;

frac.FractionDenominatorDigits =3;

fpSpread1.ActiveSheet.Columns[0].CellType = frac;

fpSpread1.ActiveSheet.Columns[1].CellType = frac;

fpSpread1.ActiveSheet.Cells[0, 0].Value =5.01;

  

这个示例设置一个单元格以分数形式显示数据,值5.01的显示结果为5 1/100:另外一种设置分数显示的方法是(使用FractionCustomFormat属性)设置自定义格式设置一个数值。默认的值是“# ???/???”其中格式为一个整数(#)伴随着一个三位的分数 ( / )。 斜杠后面的问号决定了分母的数位(可以有一到十五位的精度,因为15位的精度是最大的)。自定义格式,你也可以 指定分母,比如“# ???/100”或者“# ??/64”。如果FractionConvertWholeNumber被设置为真,那么就不会显示为整数部分并且 整个数字显示为一个分数。

使用Spin按钮

默认情况下,Spin按钮不显示,但是你可以在单元格处于编辑模式时在单元格内部显示Spin按钮。 你可以使用以单词“Spin”开头的NumberCellType的若干属性设置各种不同的Spin函数。

百分比单元格PercentCellType

你可以使用一个百分比单元格以便将数据显示为百分数并且限制输入为百分数的值。默认情况下,在一个百分比单元格中,如果你在运行状态双击处于编辑模式下的单元格,就会弹出一个计算器。你可以指定显示在确定键和取消键上的文本信息。

下面的示例将一个单元格设置成为一个百分数单元格并且显示了一个简写(PRCNT)而不是百分号(%)。

FarPoint.Win.Spread.CellType.PercentCellType prctcell =new FarPoint.Win.Spread.CellType.PercentCellType();

prctcell.PercentSign ="PRCNT";

prctcell.PositiveFormat = FarPoint.Win.Spread.CellType.PercentPositiveFormat.PercentSignBeforeWithSpace;

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

  

日期时间单元格DateTimeCellType默认情况下,Spin按钮不显示,但是当单元格处于编辑模式时,你可以使用单元格内部的Spin按钮。 你可以使用以单词“Spin”开头的PercentCellType的若干属性设置各种不同的微调函数。

你可以设置一个单元格用于显示日期和时间,也可以指定要显示的日期和时间的格式。

在Windows环境中,默认值使用区域化的设置或者区域化的选项。你可以使用几种属性指定其格式。如果一个日期时间单元格显示的日期和时间使用长日期和时间格式,并且当前日期和时间是“10/29/2002 11:10:01”,文本属性返回“周二,十月,29日,2002年 11:10:01 上午”。值属性返回所述的日期时间的对象。

默认情况下,在日期时间单元格中,如果你在运行时双击处于编辑状态下的单元格,就会弹出一个日历(或者时钟)。你可以决定是否显示这些,并且你可以指定显示在确定和取消按钮上的文本。

下面的示例代码在第二行第二列的单元格中显示一个短格式的日期和时间:

FarPoint.Win.Spread.CellType.DateTimeCellType datecell =new FarPoint.Win.Spread.CellType.DateTimeCellType(); 

datecell.DateSeparator =" | ";

datecell.TimeSeparator =".";

datecell.DateTimeFormat = FarPoint.Win.Spread.CellType.DateTimeFormat.ShortDateWithTime;

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

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

fpSpread1.ActiveSheet.Cells[1, 1].Value = System.DateTime.Now;

  

货币单元格CurrencyCellType

货币符号(并且决定是否显示)

分隔符(并且决定是否显示)

十进制符号

是否显示一个主导的零

正数指示器(并且决定是否显示它)

负数指示器(并且决定是否显示它)

默认情况下,在货币单元格中,如果你在运行时双击处于编辑状态的单元格,就会显示一个弹出的计算器。你可以决定是否允许他显示,并且你可以指定显示在“确定”和“取消”按钮上的文本信息。 你还可以设置可以输入的最小和最大值, 以便用户对其输入进行验证。

下面的示例代码设置了一个美元的货币单元格并设置了一定的格式:

FarPoint.Win.Spread.CellType.CurrencyCellType currcell =new FarPoint.Win.Spread.CellType.CurrencyCellType(); 

currcell.CurrencySymbol ="US$";

currcell.DecimalSeparator =":";

currcell.DecimalPlaces =8;

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

  

 在默认情况下,Spin微调按钮是不显示的,但是你可以在单元格的边上显示微调按钮(此时单元格处于编辑模式)。你可以使用以字符Spin开头的CurrencyCellType属性设置不同的微调函数。

附:Spread for Windows Forms快速入门系列文章

Spread for Windows Forms快速入门(1)---开始使用Spread

Spread for Windows Forms快速入门(2)---设置Spread表单

Spread for Windows Forms快速入门(3)---行列操作

 

相关阅读:

Spread for Windows Forms 7新功能使用指南

Spread Studio 10.0v1 发布

SpreadJS 10.0v1 发布

 

时间: 2024-09-20 07:59:07

Spread for Windows Forms快速入门(4)---常用的单元格类型(上)的相关文章

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

在上一篇,我们介绍了常用了文本类型单元格.除了文本型单元格外,Spread还支持如下13种图形单元格类型:组合框单元格.按钮单元格.复选框单元格.超链接单元格.进度条单元格.条码单元格.颜色选择器单元格.图片单元.列表框单元格.复合列组合框单元格.复合选项单元格.富文本单元格.滚动条单元格等.下面我们介绍前五种的基本用法. 组合框单元格ComboBoxCellType 你可以使用一个组合框单元格以显示一个可编辑的下拉列表,用户通过在显示的列表中进行选择完成对值的输入.你可以指定项目的列表是否包括

Spread for Windows Forms快速入门(11)---数据筛选

Spread支持开发人员自定义筛选数据的用户体验.基于行数据筛选,你可以允许用户分列进行筛选,从而仅显示符合了下拉列表中条件的行的数据,或者根据筛选结果更改行的外观.你可以使用默认的筛选方式,或者你可以从实际出发,自定义筛选器的每一个方面. 允许用户进行行筛选 默认情况下,表单禁止用户对表单的行进行筛选.你可以开启这一特性, 允许用户在所有列或者指定的列中进行行筛选.根据你要隐藏被筛除的列,还是更改列的外观,分别使用HideRowFilter类或StyleRowFilter类. 使用列Allow

Spread for Windows Forms快速入门(14)---文件操作

你可以将数据从Spread中存到几种不同类型的文件中或者可以在Spread中打开几种不同类型的数据文件.通过使用相应的代码,你可以将整个控件,某个特定的表单,或者某个特定单元格区域中的数据保存为几种不同的文件类型或者流.类似的,你可以允许用户对某几种文件类型进行文件操作. 保存到Excel文件 你可以使用ExcelSaveFlags枚举类型的UseOOXMLFormat选项,将数据保存到Excel格式文件(BIFF8 格式)或者Excel 2007 XML 格式(xlsx).默认的,当你保存为E

Spread for Windows Forms快速入门(15)---使用 Spread 设计器

通过 Spread 设计器用户可以快速地对 Spread 控件进行设计.无论用户是正在做一个关于 Spread 控件特性的原型研究,还是对于一个已经存在的 Spread 控件在某些方面进行进一步的定制,Spread 设计器专有的图形界面可节省大量的时间和精力.Spread 设计器允许用户添加数据,同时设置控件属性,而且还包括那些在 Visual Studio 中无法设置的属性.用户可以同时设置运行时和设计时属性,大多数情况下用户可以在应用设置之前预览效果,设置完成后,就可以将所有的设置应用到 S

Spread for Windows Forms快速入门(9)---使用公式

Spread的公式计算引擎支持300多种内置函数,并支持通过内置函数和运算符来自定义公式.支持的函数包括日期.时间函数.工程计算函数.财务计算函数.逻辑函数.数学和三角函数.统计函数.文本函数等. 公式计算引擎支持单元格的引用.表单的交叉引用.循环引用.函数嵌套等. 放置公式在单元格中 你可以添加一个公式到一个单元格或单元格区域内. 你还可以向一行或者一列中所有的单元格添加公式.该公式是一个具有说明公式字符串的公式,通常是包含一个函数,运算符和常数的集合体. 当把一个公式分配到行或列的时候,这个

Spread for Windows Forms快速入门(16)---用Spread设计器创建和编辑图表

Spread支持85种丰富多彩的图表效果.可以在Spread设计器中基于工作表的数据直接生成图表,操作简单.同时,软件人员还可以在Visual Studio设计环境中定制图表的所有元素,包括标题.序列.轴.样式.图例等.这一篇介绍如何用Spread设计器创建和编辑图表. 准备图表的数据 首先要启动Spread设计器.你可以在 Visual Studio .NET 中鼠标右键点击 Spread 控件,在弹出菜单中选择 Spread 设计器:也可以在安装菜单中启动独立运行的Spread 设计器. 在

Spread for Windows Forms快速入门(10)---绑定到数据库

下面的教程将带你创建一个工程, 并将Spread控件绑定到一个数据库. 在这个教程中,主要的步骤为: 1. 将Spread添加到一个数据绑定工程中 2. 设置数据库连接 3. 指定要使用的数据 4. 创建数据集 5. 把Spread控件绑定到数据库 6. 通过改变单元格类型改善显示效果   将Spread添加到一个数据绑定工程中 打开一个新的Visual Studio.NET工程.将工程命名为databind.将工程中的窗体文件命名为binding.cs(或.vb). 将FpSpread控件添加

Spread for Windows Forms快速入门(12)---数据分组(Outlook风格)

你可以设置的显示将行分组变成 OUTLOOK样式.对于大量的数据来说,这样会以用户需要的顺序显示数据.用户可以选择要进行的排序(以列为依据),然后控件会以此为依据将行组织起来,分级地显示数据.既可以通过双击列首的方式,也可以通过点击和拖拽此列进入页面头部分组栏的方式 选中要进行分组的列. 允许用户使用行分组 默认情况下,不允许用户在表单中进行行分组. 你可以开启这项特性,以便对整个表单的行进行分组.除了允许进行分组之外,你还需要允许移动列,因为用户通过使用点击和向分组栏中拖拽列首的方式进行分组,

Spread for Windows Forms快速入门(13)---数据排序

开发人员可以对Spread表单中的行和列进行自动排序操作,如根据指定的列,以升序方式自动排序表单中的数据.同时,也可以显示排序指示器.这些操作不会影响数据模型 仅仅涉及数据如何显示. 允许用户自动地对行进行排序 你可以设置表单以允许用户在列首被点击的情况下使用自动排序这一功能.当列首第一次被点击(被选中)时,未排序的图标就会显示.第二次点击时就会显示排序图标并且会将列进行排序.如果用户在相同的列上 连续点击,那么排序的方向就会被反转.这并不影响数据模型,只会影响数据如何显示.下面的图表显示了未排