找回密码
 立即注册

QQ登录

只需一步,快速开始

syl000216

银牌会员

16

主题

35

帖子

3540

积分

银牌会员

积分
3540

活字格认证

syl000216
银牌会员   /  发表于:2014-12-3 14:28  /   查看:7243  /  回复:7
spread 选中多行后,点击列标题排序后,怎么能让我选择的数据还选中,现在的情况是,排序后选中的是当前选中的Index对应的行,不是我要选中的数据,拜托斑竹了  急急急·······

7 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-12-3 20:46:00
沙发
回复 1楼syl000216的帖子

请参考以下代码:

  1.         protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (IsPostBack)
  4.             {
  5.                 return;
  6.             }
  7.             FarPoint.Web.Spread.Column col;
  8.             col = FpSpread1.ActiveSheetView.Columns[1];
  9.             FpSpread1.ActiveSheetView.Cells[0, 1].Text = "Alignment";
  10.             FpSpread1.ActiveSheetView.Cells[1, 1].Text = "CarbAdjust";
  11.             FpSpread1.ActiveSheetView.Cells[2, 1].Text = "Brakes";
  12.             col.SortIndicator = FarPoint.Web.Spread.Model.SortIndicator.Descending;
  13.             FpSpread1.ActiveSheetView.AllowSort = true;
  14.         }

  15.         protected void FpSpread1_SortColumnCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e)
  16.         {
  17.             //清除点击列头的选择范围
  18.             this.FpSpread1.ActiveSheetView.SelectionModel.ClearSelection();

  19.             //可以把之前的 Selection 存入 Session中
  20.             this.FpSpread1.ActiveSheetView.SelectionModel.AddSelection(0, 0, 1, 1);
  21.         }
复制代码
回复 使用道具 举报
syl000216
银牌会员   /  发表于:2014-12-3 21:09:00
板凳
看的不是很明白  能不能稍微解释一下下哈
回复 使用道具 举报
syl000216
银牌会员   /  发表于:2014-12-4 10:54:00
地板
有没有可能在前台用js方法实现啊
回复 使用道具 举报
syl000216
银牌会员   /  发表于:2014-12-4 15:30:00
5#
现在可以记住数据了  但是数据排序后 如果数据比较多的情况下  选中的数据排到下面去的时候 只有滑动滚动条才能看到  有没有方法在后台设置滚动条的位置啊  指定滚动条到哪一行
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-4 18:34:00
6#
回复 5楼syl000216的帖子

可以通过前台的接口设置:

  1.     <script type="text/javascript">
  2.         function test() {
  3.             FpSpread1.ScrollTo(10, 1);
  4.         }
  5.     </script>
复制代码
回复 使用道具 举报
syl000216
银牌会员   /  发表于:2014-12-6 13:42:00
7#
这是前台方法  我想问的是后台代码控制的方法啊
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-8 15:49:00
8#
回复 7楼syl000216的帖子

后台有相应的属性为 TopRow,测试代码:

  1. FarPoint.Web.Spread.SheetView sv=FpSpread1.ActiveSheetView;
  2. FarPoint.Web.Spread.StyleInfo altrowstyle=new FarPoint.Web.Spread.StyleInfo();
  3. FarPoint.Web.Spread.Model.DefaultSheetStyleModel altrowmodel=new FarPoint.Web.Spread.Model.DefaultSheetStyleModel(1000,7);
  4. sv.ColumnCount=7;
  5. sv.RowCount=1000;
  6. altrowstyle.BackColor=Color.LightCyan;
  7. altrowstyle.ForeColor=Color.Navy;
  8. altrowstyle.Font.Bold=true;
  9. altrowmodel.SetDirectAltRowInfo(1,altrowstyle);
  10. sv.StyleModel=altrowmodel;
  11. sv.TopRow=4;

复制代码


不过,使用 Spread 8.0 测试没有成功,我这边已经把问题反馈给产品组,有进一步消息反馈给你。

如果使用前台的接口能否指出哪里不符合您的需求?

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