找回密码
 立即注册

QQ登录

只需一步,快速开始

一萧一剑

中级会员

30

主题

70

帖子

650

积分

中级会员

积分
650

活字格认证微信认证勋章元老葡萄

[已处理] 背景色问题

一萧一剑
中级会员   /  发表于:2015-3-13 10:03  /   查看:5020  /  回复:3
1)图1 初始加载4行数据 背景色是正确的,按图3中的代码执行的。
     图2 点击查询按钮后,按图3中代码执行的话背景色应该不是灰色的。怎么回事?
2)图4 想问怎么写自定义按钮的脚本提示:“您真的需要保存吗?” 点击确定 执行后台代码,点击否就不执行
3)单击某行怎么改变某行的背景色
4)单击某列怎么获取光标,现在是要双击某列才能获取光标。
1.png
2.png
3.png
4.png
技术改变世界

3 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2015-3-13 12:04:00
沙发
回复 1楼一萧一剑的帖子

关于问题1)2):
首先,图3您设置行背景色的代码是正确的。
所以,根据当前的信息无法判断问题所在。1)2)问题应该还有其他逻辑代码影响,您可以单步调试下看逻辑是否正确。
如果没有解决问题,需要您提供Demo我来重现问题。

关于3)
请问指的是单击行头还是普通单元格?

问题4)
我没有理解需求,请进一步解释一下。是获取当前光标的位置吗?
回复 使用道具 举报
一萧一剑
中级会员   /  发表于:2015-3-13 12:48:00
板凳
问题1 图4中点击保存按钮,怎么写脚本提示:”您真的需要保存吗“,点击确定执行后台代码,点击否就返回(不执行后台代码)。
问题2 单击某行或者某行行头,可以改变整行的背景色。
问题3 比如要编辑某个单元格的内容,需要双击光标才能定位在某个单元格,然后开始编辑内容,可以实现单击某个单元格就编辑内容吗?
技术改变世界
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-3-13 15:09:00
地板
回复 3楼一萧一剑的帖子

问题1、2后台代码:

  1. protected override void Render(HtmlTextWriter writer)
  2.         {

  3.             Table cmd = FpSpread1.FindControl("cmdTable") as Table;

  4.             //自定义按钮调用后台事件
  5.             TableCell cell1 = new TableCell();
  6.             Button btn1 = new Button();
  7.             btn1.Text = "save";
  8.             btn1.Attributes.Add("onclick", "SaveButtonClick()");
  9.             cell1.Controls.Add(btn1);
  10.             cmd.Rows[0].Cells.Add(cell1);

  11.             //改变背景色
  12.             Table rheader = this.FpSpread1.FindControl("rh") as Table;
  13.             if (rheader!=null)
  14.             {
  15.                 int rowcount = rheader.Rows.Count;
  16.                 for (int i = 0; i < rowcount; i++)
  17.                 {
  18.                     rheader.Rows[i].Cells[0].Attributes.Add("onclick", "ChangeRowBC()");
  19.                 }
  20.             }

  21.             Table viewport = this.FpSpread1.FindControl("viewport") as Table;
  22.             if (viewport != null)
  23.             {
  24.                 int rowcount = viewport.Rows.Count;
  25.                 int colcount = viewport.Rows[0].Cells.Count;
  26.                 for (int i = 0; i < rowcount; i++)
  27.                 {
  28.                     for (int j = 0; j < colcount; j++)
  29.                     {
  30.                         viewport.Rows[i].Cells[j].Attributes.Add("onclick", "ChangeRowBC()");
  31.                     }
  32.                 }
  33.             }

  34.             base.Render(writer);
  35.         }
  36.         protected void FpSpread1_ButtonCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e)
  37.         {
  38.             if (e.CommandName=="btnSave")
  39.             {

  40.             }
  41.             else if(e.CommandName=="btnChange")
  42.             {
  43.                 int row = this.FpSpread1.ActiveSheetView.ActiveRow;
  44.                 this.FpSpread1.ActiveSheetView.Rows[row].BackColor = Color.Red;
  45.             }
  46.         }
复制代码

前台代码:

  1.     <script type="text/javascript">
  2.         function SaveButtonClick() {
  3.             if (confirm("您真的需要保存吗")) {
  4.                 var spread = this.document.getElementById("FpSpread1");
  5.                 spread.CallBack("btnsave");
  6.             }
  7.         }
  8.         function ChangeRowBC() {
  9.                 var spread = this.document.getElementById("FpSpread1");
  10.                 spread.CallBack("btnChange");
  11.         }
  12.         
  13.     </script>
复制代码


问题3,代码如下:

  1.             this.FpSpread1.EditModePermanent = true;
复制代码


为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢

评分

参与人数 1满意度 +5 收起 理由
一萧一剑 + 5 非常好

查看全部评分

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