`
77rou
  • 浏览: 50733 次
社区版块
存档分类
最新评论

Spread Studio for Winform :实现编辑状态下文本居中

阅读更多

有些朋友向我提出,怎样使编辑状态下的单元格文本垂直居中显示。Spread 表格控件单元格有两种状态,编辑状态和普通显示状态。在显示状态下,我们可以通过单元格的格式相关属性来设置单元格样式、对齐方式。该功能我们需要通过自定义单元格方式实现。

实现该功能的核心代码如下:

  1:  public override Control GetEditorControl(Control parent, FarPoint.Win.Spread.Appearance appearance, float zoomFactor)
  2:         {
  3:             TextBox tb = new TextBox();
  4:             FarPoint.Win.Spread.FpSpread spread = parent as FarPoint.Win.Spread.FpSpread;
  5:             float height = spread.Sheets[0].ActiveRow.Height;
  6:             float width = spread.Sheets[0].ActiveColumn.Width;
  7:             tb.Width = (int)width;
  8:             tb.Location = new Point(0, (int)(height / 2 - tb.Height / 2) + 2);
  9:             tb.Text = spread.Sheets[0].ActiveCell.Text;
 10:             uc = new MyEditorControl(tb);
 11:             uc.Height = (int)height;
 12:             uc.Width = (int)width;
 13:             return uc;
 14:         }

 

自定义单元格编译器由 TextBox 和 UserControl 组成。我们可以通过调整 TextBox 的位置来实现输入时文本居中。主要是通过获取当前编辑单元格的大小,来设置自定义编辑器的大小,从而确定 TextBox 的位置。

在设置单元格内容之后,我们通过以下代码返回单元格值:

  1:  public override object GetEditorValue()
  2:         {
  3:             return uc.Tb.Text;
  4:         }

 

基于 UserControl 实现的自定义编辑器代码如下:

  1: public partial class MyEditorControl : UserControl
  2:     {
  3:         TextBox tb;
  4:         
  5:         public MyEditorControl(TextBox tb1)
  6:         {
  7:             this.BackColor = Color.White;
  8:             tb = tb1;
  9:             tb.BorderStyle = System.Windows.Forms.BorderStyle.None;
 10:             this.Controls.Add(tb);
 11:         }
 12:         public TextBox Tb
 13:         {
 14:             get { return tb; }
 15:             set { tb = value; }
 16:         }
 17:     }

 

效果图:

Demo1

 

源码下载:VS 2010 + Spread Studio .NET 7 + .NET 4.0:点击下载 

使用控件查看地址:点击查看

 

 

0
6
分享到:
评论

相关推荐

    Spread for WinForm 5 中文版 Demo 源码

    "Spread for WinForm 5 中文版 Demo 源码" 是一款专为Windows Forms应用程序设计的组件,它提供了一套强大的电子表格功能,让用户可以在WinForm应用中创建、编辑和展示复杂的电子表格数据。这款组件是 GrapeCity ...

    Spread Studio for .net白皮书

    Spread Studio for强大的报表功能,这是Spread Studio for使用说明书,看了肯定能帮到你。

    Spread for Windows Forms 5.0中文手册

    .NET平台最流行的表格控件Spread for Windows Forms5.0的完整中文手册,包括: (1)开发指南:为Spread for Windows Forms的开发人员提供了概念性介绍材料和常规任务的操作说明。 该指南描述了一个应用程序开发者...

    Spread Studio for .NET试用版:跨平台的Spread Studio表格控件,类似Excel的强大功能

    Spread Studio for .NET 试用版 试用版 开发语言: .NET 可用平台: Visual Studio 2008/2010/2012/2013 当前版本: 9.0 Studio for .NET是一个功能和Excel类似的表格控件工具包。用于在您的应用系统中实现表格数据...

    Spread for WinForms V7.0 API文档.chw

    这是Spread for WinForms V7.0 API中文文档。里面记载很详细,很方便开发!

    Flexcell和spread两种表格控件的对比

    Flexcell和spread studio for .net两种表格控件的对比

    Spread for WinForms v7.0 API中文文档

    本文档专为国内广大开发者写作而成,通过大家最熟悉的语言和文化帮助您快速查找和理解Spread众多API的使用方法。文档提供接口和参数描述,同时提供大量例子和代码片段,以方便您了解产品的易用性、扩展性和灵活性。

    spreadjs_判断当前单元格是否为富文本-demo.zip

    标题“spreadjs_判断当前单元格是否为富文本-demo.zip”和描述“spreadjs_判断当前单元格是否为富文本-demo”所涉及的核心知识点是使用SpreadJS库来检测电子表格中的单元格是否含有富文本。SpreadJS是一款强大的...

    Spread for WinForms 表格控件 V7.0 使用指南

    - **产品名称**:Spread Studio for .NET 表格控件 V7.0 - **适用平台**:适用于微软 .NET 平台下的 Windows Forms、ASP.NET、WPF、Silverlight 和 WinRT 应用程序开发。 - **功能特点**: - 集成了丰富的表格功能...

    Spread for Windows Forms 5.0 中文帮助chm,开发者指南

    **Spread for Windows Forms 5.0** 是一款强大的表格控件,专为Windows Forms应用程序设计。这个控件允许开发者在应用程序中嵌入功能丰富的电子表格,类似于Microsoft Excel的功能,但可自定义并集成到自己的软件...

    Vue+SpringBoot+SpreadJS 实现的在线文档功能.docx

    本文将介绍如何使用 Vue、SpringBoot 和 SpreadJS 这三款技术栈来构建一个具备在线文档功能的应用。在线文档系统允许用户在浏览器中创建、编辑和保存Excel文件,支持多人协作,提供类似Excel的用户体验,并能与其他...

    spreadjs_自定义单元格实现层级树-demo.zip

    《SpreadJS:自定义单元格实现层级树结构详解》 SpreadJS是一款强大的JavaScript电子表格库,它提供了丰富的功能,使得开发者能够轻松地在Web应用中实现类似Excel的表格操作。在"spreadjs_自定义单元格实现层级树-...

    spreadjs_单次打印部分工作表-demo.zip

    《SpreadJS:实现单次打印部分工作表的深入解析》 SpreadJS 是一款强大的JavaScript电子表格库,由 GrapeCity 公司开发,它提供了一系列功能,使得在Web应用中创建、编辑和展示复杂的电子表格数据变得轻而易举。本...

    Spread for asp.net 5.0 使用手册

    ### Spread for ASP.NET 5.0 使用手册精解 #### 产品概述与核心特性 **Spread for ASP.NET** 是一款专为.NET平台设计的高级表格控件,特别适用于开发复杂的数据密集型应用。该控件集成了丰富的表格功能,包括但不...

    Spread for WinForms API中文文档

    本文档专为国内广大开发者写作而成,通过大家最熟悉的语言和文化帮助您快速查找和理解Spread众多API的使用方法。文档提供接口和参数描述,同时提供大量例子和代码片段,以方便您了解产品的易用性、扩展性和灵活性。 ...

    Spread for WinForms表格控件 V7.0 使用指南

    Spread for WinForms表格控件 V7.0 是一款强大的表格控件,专门用于微软.NET平台下的Windows Forms、***、WPF、Silverlight和WinRT应用程序开发。该控件提供了一个综合的、功能丰富的表格功能集合,能够实现工作表...

    Spread for ASP.NET V7.0 API文档

    《Spread for ASP.NET V7.0 API文档》是针对ASP.NET开发者的重要参考资料,它详尽地阐述了如何在Web应用程序中使用Spread组件进行高效、灵活的表格操作。 Spread组件是 GrapeCity 公司开发的一款强大的表格控件,...

Global site tag (gtag.js) - Google Analytics