FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 4416|回复: 5
打印 上一主题 下一主题

编辑单元格问题:如果Grid字段很多,出现滚动条的情况下。

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-22 21:45:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
编辑单元格问题:如果Grid字段很多,出现滚动条的情况下。要编辑滚动条后面的单元格,只要一点击,滚动条自动回到最前面,没办法编辑滚动条后面的单元格。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
沙发
发表于 2015-1-23 11:47:52 | 只看该作者
你这个例子,可以给我看看吗。怎么才能写到库里
板凳
发表于 2015-1-23 19:32:15 | 只看该作者
我的也是这样!一行很长时,要编辑最后一格后,编辑完就跳到最前面了!
楼上要保存的话,可以实时更新一个临时表,保存时把临时表存到数据库,也可以用遍历表格来保存!
地板
 楼主| 发表于 2015-1-23 20:34:58 | 只看该作者
  1. private void SaveData()
  2.         {
  3.             //Id,sno,bookName
  4.             string strSql = string.Empty;
  5.             // 删除现有数据
  6.             List<int> deletedRows = Grid1.GetDeletedList();
  7.             foreach (int rowIndex in deletedRows)
  8.             {
  9.                 string id = "0";
  10.                 if (Grid1.DataKeys[rowIndex][0] != null)
  11.                     id = Grid1.DataKeys[rowIndex][0].ToString();

  12.                 strSql += "delete from BookSell where ID='" + id + "'; ";
  13.             }

  14.             // 修改的现有数据
  15.             Dictionary<int, Dictionary<string, object>> modifiedDict = Grid1.GetModifiedDict();
  16.             foreach (int rowIndex in modifiedDict.Keys)
  17.             {
  18.                 string id = "0";
  19.                 if (Grid1.DataKeys[rowIndex][0] != null)
  20.                     id = Grid1.DataKeys[rowIndex][0].ToString();

  21.                 Dictionary<string, object> rowDict = modifiedDict[rowIndex];

  22.                 string upField = string.Empty;
  23.                 #region  更新字段设置
  24.                 // 执行编辑
  25.                 if (rowDict.ContainsKey("zxEditor"))
  26.                 {
  27.                     upField += " zxEditor='" + rowDict["zxEditor"] + "',";
  28.                 }

  29.                 // 序号
  30.                 if (rowDict.ContainsKey("SNO"))
  31.                 {
  32.                     upField += " SNO='" + rowDict["SNO"] + "',";
  33.                 }
  34.                 // 书名
  35.                 if (rowDict.ContainsKey("bookName"))
  36.                 {
  37.                     upField += " bookName='" + rowDict["bookName"] + "',";
  38.                 }
  39.                 // 类型
  40.                 if (rowDict.ContainsKey("itype"))
  41.                 {
  42.                     upField += " itype='" + rowDict["itype"] + "',";
  43.                 }
  44.                 // 定价
  45.                 if (rowDict.ContainsKey("price"))
  46.                 {
  47.                     upField += " price='" + rowDict["price"] + "',";
  48.                 }
  49.                 // 印数
  50.                 if (rowDict.ContainsKey("yinCount"))
  51.                 {
  52.                     upField += " yinCount='" + rowDict["yinCount"] + "',";
  53.                 }
  54.                 // 出版时间
  55.                 if (rowDict.ContainsKey("cbTime"))
  56.                 {
  57.                     upField += " cbTime='" + rowDict["cbTime"] + "',";
  58.                 }
  59.                 // 进度
  60.                 if (rowDict.ContainsKey("step"))
  61.                 {
  62.                     upField += " step='" + rowDict["step"] + "',";
  63.                 }
  64.                 // 销售册数
  65.                 if (rowDict.ContainsKey("SellCount"))
  66.                 {
  67.                     upField += " SellCount='" + rowDict["SellCount"] + "',";
  68.                 }

  69.                 // 经销商
  70.                 if (rowDict.ContainsKey("jxs"))
  71.                 {
  72.                     upField += " jxs='" + rowDict["jxs"] + "',";
  73.                 }

  74.                 // 银行
  75.                 if (rowDict.ContainsKey("bank"))
  76.                 {
  77.                     upField += " bank='" + rowDict["bank"] + "',";
  78.                 }

  79.                 // 回款(实洋)
  80.                 if (rowDict.ContainsKey("hk"))
  81.                 {
  82.                     upField += " hk='" + rowDict["hk"] + "',";
  83.                 }

  84.                 // 回款时间
  85.                 if (rowDict.ContainsKey("hkTime"))
  86.                 {
  87.                     upField += " hkTime='" + rowDict["hkTime"] + "',";
  88.                 }

  89.                 // 薪酬
  90.                 if (rowDict.ContainsKey("Amt"))
  91.                 {
  92.                     upField += " Amt='" + rowDict["Amt"] + "',";
  93.                 }

  94.                 upField = upField.TrimEnd(',');

  95.                 #endregion

  96.                 if (!string.IsNullOrWhiteSpace(upField))
  97.                 {
  98.                     strSql += "update BookSell set " + upField + " where ID='" + id + "';";
  99.                 }
  100.             }


  101.             // 新增数据
  102.             List<Dictionary<string, object>> newAddedList = Grid1.GetNewAddedList();
  103.             for (int i = 0; i < newAddedList.Count; i++)
  104.             {
  105.                 string insertStr = "INSERT INTO [BookSell]([SNO],[bookName],[yinCount],[zxEditor],[itype],[step],[cbTime],[price],[SellCount],[jxs],[bank],[hk],[hkTime],[Amt]) VALUES( ";

  106.                 Dictionary<string, object> rowDict = newAddedList[i];
  107.                 insertStr += "'" + rowDict["SNO"] + "','" + rowDict["bookName"] + "','" + rowDict["yinCount"] + "','" + rowDict["zxEditor"] + "','" + rowDict["itype"] + "','" + rowDict["step"] + "','" + rowDict["cbTime"] + "','" + rowDict["price"] + "','" + rowDict["SellCount"] + "','" + rowDict["jxs"] + "','" + rowDict["bank"] + "','" + rowDict["hk"] + "','" + rowDict["hkTime"] + "','" + rowDict["Amt"] + "'";

  108.                 insertStr += ");";

  109.                 strSql += insertStr;
  110.             }

  111.             if (!string.IsNullOrWhiteSpace(strSql))
  112.                 Maticsoft.DBUtility.DbHelperSQL.ExecuteSql(strSql);

  113.             BindGrid(0);


  114.         }
复制代码


5#
 楼主| 发表于 2015-1-23 20:36:17 | 只看该作者
木土土 发表于 2015-1-23 19:32
我的也是这样!一行很长时,要编辑最后一格后,编辑完就跳到最前面了!
楼上要保存的话,可以实时更新一个临 ...

我的一点最后一个单元格,就跳到最前了,根本没办法激活录入
6#
发表于 2015-9-28 13:34:03 | 只看该作者
我也碰到这个问题,你的解决了吗?能否告诉一下如何解决的?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-2 09:21 , Processed in 0.048198 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表