← 返回所有博客文章

Spread 7 for WinForms 新引入了2 个新的 CellTypes:

GcTextBoxCellType   文本输入

GcDateTimeCellType 日期输入

      本文就GcTextBoxCellType的几个常用的功能进行说明:

    GcTextBoxCellType 相对TextCellType而言,属于增强型CellType。 事实上,它相当于TextBox控件一样可以做任何事,最重要的是,不用写自定义CellType的继承类。 如,早期的TextCellType无法处理CrLf和Tab制表符--当拷贝、粘贴的时候。而GcTextBoxCellType 仅仅通过2个属性的设置即可实现类似功能-  AcceptsCrLf、AcceptsTabChar。

    下面就GcTextBoxCellType控件的几个属性一一说明,其他属性参见文档

    AlternateText(水印文字)

    用GcTextBoxCelltype你可以设置替代文本GcTextBox。您可以在空白单元格设置文本作为水印:单元格成为空为空时候,AlternateText文字替代显示。看看下面的例子:

      1: GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType textcell = new GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType();
      2: textcell.AlternateText.Null.ForeColor = System.Drawing.Color.Red;
      3: textcell.AlternateText.Null.Text = "This cell is blank";
      4: fpSpread1.Sheets[0].Cells[0, 0, 10, 0].CellType = textcell;
      效果截图:

    AlternateText-270x300

    AutoConvert(自动大小写转换)

    GcTextBoxCellType引入AutoConvert属性使用它可以将输入的数据自动转换到文本的FormatString。因此,这可以被用来作为输入掩码。例如,您可以进行设置,用户输入小写字母中的数据,可被自动转换为大写字母。看看下面的例子:

      1: GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType textcell = new GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType();
      2: textcell.AutoConvert = true;
      3: textcell.FormatString = "A";
      4: fpSpread1.Sheets[0].Cells[0, 0, 10, 0].CellType = textcell;

     

    WrapMode(文字、单词换行)

    尽管TextCellType只允许您设置多行和WordWrap属性。 有了GcTextBoxCellType,你现在可以更进一步:它允许你还可以设置WrapMode的类型,

    如是否要通过字符换行或Word换行。

      1: GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType textcell = new GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType();
      2: textcell.WrapMode = GrapeCity.Win.Spread.InputMan.CellType.WrapMode.WordWrap;
      3: textcell.Multiline = true;
      4: fpSpread1.Sheets[0].Cells[0, 0, 10, 0].CellType = textcell;

     

    截图如下:

    WrapMode-300x295

    MaxLineCount(限制列输入个数)

    您可以设置GcTextBoxCell使用MaxLineCount属性的最大数量。此属性很有用,如您想来限制在一个单元格格中的数据录入。您还可以设置的最大长度的单元,

    通过使用MaxLengthUnit属性。此属性获取或设置控制在允许的最大数量的字符是否是基于字节,字符或文本元素。使用下面的代码在一个单元格格中的字符设置限制:

      1: GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType inputcell1 = new GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType();
      2: inputcell1.MaxLengthUnit = GrapeCity.Win.Spread.InputMan.CellType.LengthUnit.Char;
      3: inputcell1.MaxLength = 10;
      4: fpSpread1.Sheets[0].Cells[1, 1].CellType = inputcell1;

    请通过我们的在线文档GcTextBoxCellType, 获得更多信息。

    源码下载: