找回密码
 立即注册

QQ登录

只需一步,快速开始

lifesky2006

注册会员

11

主题

79

帖子

152

积分

注册会员

积分
152

活字格认证

lifesky2006
注册会员   /  发表于:2014-7-30 17:30  /   查看:6758  /  回复:4
1、如何防止定时刷新绑定数据源时候闪烁?

2、使用spread的datasource=记录集  方式进行数据源绑定,绑定后spread会根据绑定数据源的格式来自动设置单元格或列的显示格式,一般左对齐,但是我需要定时刷新的时候时刻进行居中对齐。
我在绑定数据源的时候设置了列对齐方式为居中,可是一绑定数据源就变成了左对齐,再设置居中就会造成刷新的时候位置显示闪烁,使用绑定前禁止redraw,绑定后开启redraw=true的方式不行,请问有什么解决方法?
我找到了一个方法可行,就是先把控件的数据自动填充关闭,绑定数据源,置居中,开启自动填充,refresh刷新,这样可以实现,但是添加了下面第3条这个设置字体颜色就又不居中了

3、我想根据数据源的某一个字段内容来设置该行的字体颜色,
我是用for循环从第1行到最后一行,然后从第一列到最后一列,使spread.row=i spread.col=j的方式依次判断某单元格内容,然后设置spread.forecolor实现的行字体颜色,但是设置了颜色后第2条中的居中就又不行了,即使设置颜色后再设置居中也不行,设置颜色前设置也不行


能否针对上面3条给出详细的解决方法,最好带例子。谢谢!!
另外我发现这个居中很让人费解,一直不明白应该在什么时候设置居中,如果不绑定数据源的时候,一般在开始设置一次就可以了,但是绑定数据源后这个居中好像就不是很清楚了,有的时候设置了居中也不居中。

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-7-31 15:00:00
沙发
回复 1楼lifesky2006的帖子

问题一,
可以通过以下代码使 Spread 一次绘制所有单元格:

  1.             this.fpSpread1.SuspendLayout();
  2.             //绑定数据源
  3.             this.fpSpread1.ResumeLayout();
复制代码
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-7-31 15:32:00
板凳
回复 1楼lifesky2006的帖子

问题二,我通过以下代码并没有重现闪烁情况。

  1.         private void Form1_Load(object sender, EventArgs e)
  2.         {
  3.             this.fpSpread1.SuspendLayout();
  4.             //绑定数据源
  5.             this.fpSpread1.DataSource = GetData();
  6.             this.fpSpread1.ResumeLayout();

  7.             this.fpSpread1.ActiveSheet.Columns[4].HorizontalAlignment= CellHorizontalAlignment.Center;
  8.         }

  9.         private DataTable GetData()
  10.         {
  11.             string dbconStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\NWind_CHS.mdb";
  12.             using (OleDbConnection dbcon = new OleDbConnection(dbconStr))
  13.             {
  14.                 dbcon.Open();
  15.                 OleDbDataAdapter dbAdapter = new OleDbDataAdapter("SELECT * FROM 产品", dbcon);
  16.                 DataTable dt = new DataTable();
  17.                 dbAdapter.Fill(dt);
  18.                 return dt;
  19.             }
  20.         }
复制代码

数据源为微软的 NorthWind 数据库。

并且重新绑定数据也没有出现居中样式和前景色消失的情况。我把 Demo 上传你尝试下:

13404.zip (59.09 KB, 下载次数: 461)
回复 使用道具 举报
lifesky2006
注册会员   /  发表于:2014-10-22 09:52:00
地板
谢谢
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-10-22 13:36:00
5#
回复 4楼lifesky2006的帖子

客气了。

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