找回密码
 立即注册

QQ登录

只需一步,快速开始

noahark

论坛元老

62

主题

173

帖子

7139

积分

论坛元老

积分
7139

活字格认证

noahark
论坛元老   /  发表于:2014-3-18 18:28  /   查看:7792  /  回复:8
版主,您好!如题,我想在点击farpoint的单元格的时候,单元格的背景颜色不是默认,而是自己可定义的,请问怎么处理?

8 个回复

倒序浏览
roger.wang
社区贡献组   /  发表于:2014-3-19 09:17:00
沙发
回复 1楼noahark的帖子

什么平台的,Winform吗?

设置当前Cell的背景色,可用下面代码试试?

  1. fpSpread1.ActiveSheet.SelectionStyle = FarPoint.Win.Spread.SelectionStyles.SelectionColors;
  2. fpSpread1.ActiveSheet.SelectionPolicy = FarPoint.Win.Spread.Model.SelectionPolicy.Range;
  3. fpSpread1.ActiveSheet.SelectionUnit = FarPoint.Win.Spread.Model.SelectionUnit.Cell;
  4. fpSpread1.ActiveSheet.AddSelection(0, 0, 2, 2);
  5. fpSpread1.ActiveSheet.AddSelection(3, 0, 2, 2);
  6. fpSpread1.ActiveSheet.SelectionBackColor = Color.Red;
  7. fpSpread1.ActiveSheet.SelectionForeColor = Color.DarkBlue;
复制代码
回复 使用道具 举报
noahark
论坛元老   /  发表于:2014-3-19 10:10:00
板凳
您好,不是winform,是webform,请问有相关的方法吗?追加说明下,我是想在点击单元格之后,单元格的高亮颜色可以自己设置。
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-3-19 10:28:00
地板
回复 3楼noahark的帖子

“可以自己设置” 能描述一下背景需求吗? 在编程阶段设置好还是动态设置。

可通过JavaScript实现,参考代码如下:

  1.     <script type="text/javascript">
  2.         function cellclick() {
  3.             var spread=this.document.getElementById("<%=this.FpSpread1.ClientID%>");
  4.             var activeRow=spread.ActiveRow;
  5.             var activeCol=spread.ActiveCol;
  6.             var cell = spread.GetCellByRowCol(activeRow, activeCol);
  7.             cell.bgColor = "red";
  8.         }
  9.     </script>
复制代码


后台代码:

  1.      protected override void Render(HtmlTextWriter writer)
  2.         {
  3.             Table _viewPort = this.FpSpread1.FindControl("viewport") as Table;
  4.             _viewPort.Attributes.Add("onclick", "return cellclick()");
  5.             base.Render(writer);
  6.         }
复制代码
回复 使用道具 举报
noahark
论坛元老   /  发表于:2014-3-19 10:38:00
5#
您好,我刚试了你给的方法,可以使用。刚才我的描述不完整。就是我希望我在选中单元格之后的高亮颜色是自己所设定的,当鼠标移开的时候,还原之前的选中之前的颜色。麻烦了
回复 使用道具 举报
noahark
论坛元老   /  发表于:2014-3-19 11:23:00
6#
类似于winform下面的这个方法c1FlexGrid1.Styles[&quot;Focus&quot;].BackColor = Color.Blue; 对应的webform下面有类似的方法吗?
回复 使用道具 举报
noahark
论坛元老   /  发表于:2014-3-19 11:28:00
7#
版主还在么,能麻烦帮忙看下么?
回复 使用道具 举报
noahark
论坛元老   /  发表于:2014-3-19 12:41:00
8#
已找到方法了:fp1.ActiveSheetView.SelectionBackColor = System.Drawing.Color.Red;
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-3-19 13:42:00
9#
回复 8楼noahark的帖子

谢谢您的反馈。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部