找回密码
 立即注册

QQ登录

只需一步,快速开始

lonely红茶

高级会员

9

主题

25

帖子

1392

积分

高级会员

积分
1392

活字格认证

lonely红茶
高级会员   /  发表于:2015-4-27 17:19  /   查看:8684  /  回复:9
请问如何自定义行或列标题的样式 有对应的事件么  还有复制单元格时是否支持复制单元格的格式以及公式

9 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-4-27 17:29:00
沙发
回复 1楼lonely红茶的帖子

1.行,列样式。
-->Column和Row下面都有StyleName属性,你可以设置自定义的样式,然后设置给他们。
另外Row,Column下还有BackColor等属性,可以直接设置样式。
具体的你可以根据需求来选择合适的模式。
这点可以参考spread产品文档的Understanding the Style Model章节。

对应的事件,不太明白,你需要触发哪种事件呢?

2.复制单元格是否支持公式和格式。
-->请问你是使用什么方式复制呢?是指使用剪切板进行复制么?
你可以参考产品文档的Customizing Clipboard Operation Options章节。
如果是使用copy方法复制数据,可以参考Copying Data on a Sheet章节。

Spread WinForm
文档地址:
32位系统:C:\Program Files\ComponentOne\Spread Studio 8\Docs\Windows Forms
64位系统:C:\Program Files (x86)\ComponentOne\Spread Studio 8\Docs\Windows Forms
文档名称:FarPoint.Win.Spread.8.0.chm
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
lonely红茶
高级会员   /  发表于:2015-4-27 18:19:00
板凳
回复 2楼Alice的帖子

我想实现的效果是 行列标题(仅标题)的样式跟随条件变化 比如符合条件的设置背景色 不符合条件的话不设置背景色 如果没有行列标题样式事件 可能会需要频繁设置行列标题样式
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-4-28 10:14:00
地板
回复 3楼lonely红茶的帖子

你好。
我对你的问题理解是你需要设置Conditional Formatting。基于这些条件,当满足条件的时候,会设置特殊的样式。
基于方法是使用Sheet下的SetConditionalFormat方法。
具体请参考产品文档的Setting up Conditional Formatting of a Cell章节。
章节索引:
Spread Windows Forms 8.0 Product Documentation > Developer's Guide > Customizing Interaction in Cells > Using Conditional Formatting of Cells > Setting up Conditional Formatting of a Cell

Spread WinForm
文档地址:
32位系统:C:\Program Files\ComponentOne\Spread Studio 8\Docs\Windows Forms
64位系统:C:\Program Files (x86)\ComponentOne\Spread Studio 8\Docs\Windows Forms
文档名称:FarPoint.Win.Spread.8.0.chm
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
lonely红茶
高级会员   /  发表于:2015-4-28 17:41:00
5#
没有找到有关设置行列标题样式的帮助文档 文档名是SpreadWPF.chm  控件本身不支持自定义行列标题的样式么
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-4-29 09:24:00
6#
回复 5楼lonely红茶的帖子

请问你安装的是Spread for WinForm平台的产品么?
如果本地找不到文档,这是spread的在线文档地址,请参考:
http://sphelp.grapecity.com/docs/

以下针对WinForm的回答:
根据之前你的描述,Spread支持自定义的,可以设置NamedStyle,你可以判断当满足条件的时候采用某种NamedStyle。
另外还有Conditional Formatting,就是设置条件格式,比如当某个单元格的值大于0显示红色之类。
请根据你的需求选择合适的方法。
有关该方法的使用可以参考产品文档。
NamedStyle: http://sphelp.grapecity.com/WebH ... medStyleEditor.html

Conditional Formating: http://sphelp.grapecity.com/WebH ... cellcondformat.html
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
lonely红茶
高级会员   /  发表于:2015-4-29 09:48:00
7#
回复 6楼Alice的帖子

使用的是WPF控件 所谓"行列标题"是如下图所示红色线框标出的区域
QQ截图20150429094506.jpg (18.08 KB, 下载次数: 903)
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-4-29 17:06:00
8#
回复 7楼lonely红茶的帖子

stylename 类可以设置单元格的样式,参考代码如下:

  1.             gcSpreadSheet1.Sheets[0].NamedStyles.Add(new GrapeCity.Windows.SpreadSheet.Data.StyleInfo() { Background = new SolidColorBrush(Colors.Red), Name = "aaa", VerticalAlignment = GrapeCity.Windows.SpreadSheet.Data.CellVerticalAlignment.Center });
  2.             var style = new GrapeCity.Windows.SpreadSheet.Data.StyleInfo();
  3.             gcSpreadSheet1.Sheets[0].Cells[0, 0].StyleName = "aaa";
  4.             gcSpreadSheet1.Sheets[0].Rows[7].StyleName = "aaa";

  5.             //set rowheader`s style
  6.             gcSpreadSheet1.Sheets[0].RowHeader.Columns[0].StyleName = "aaa";
  7.             style.Background = new SolidColorBrush(Colors.Blue);
  8.             style.BorderLeft = new GrapeCity.Windows.SpreadSheet.Data.BorderLine(Colors.Red);
  9.             style.BorderTop = new GrapeCity.Windows.SpreadSheet.Data.BorderLine(Colors.Red);
  10.             style.BorderRight = new GrapeCity.Windows.SpreadSheet.Data.BorderLine(Colors.Red);
  11.             style.BorderBottom = new GrapeCity.Windows.SpreadSheet.Data.BorderLine(Colors.Red);
复制代码
回复 使用道具 举报
lonely红茶
高级会员   /  发表于:2015-4-29 17:41:00
9#
回复 8楼iceman的帖子

谢谢
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-4-29 17:55:00
10#
回复 9楼lonely红茶的帖子

不客气
为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢
   
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部