为了账号安全,请及时绑定邮箱和手机立即绑定

如何在gridview中特别显示被修改的数据

如何在gridview中特别显示被修改的数据

人到中年有点甜 2018-07-30 13:09:31
数据库有两个表,一个表有所有的数据,另一个表则是把前一个表中修改后的数据插入其中用的。(例如我在第一个表中修改了小米的数据,那么修改后的数据就是在第二个表中,而第一个数据还是原来的数据),现在我有一个问题。我希望在gridview载入第二个表的内容时,能特别显示(以红色字体或者与原字体不同的字体)被改动的数据,这个应该这么做。(例如我改动了小米的身份证后,那么我用gridview显示第二个表时,小米的身份证就是以红色显示。)
查看完整描述

3 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

你提问的问题包括两个部份的事情:

1、如何判断数据是否被修改过,这个逻辑你应该实现了吧,也就是说,你要么在修改的时候,就有一个字段表示此行数据被修改过,要么你每次都得重新进行判断,建议以空间换时间。多一个字段,如UpdateTime之类的,修改过后只需要判断这个字段就可以知道是否修改过。

2、当知道一行数据是与其他行不同时,如何特别显示,如果使用第三方控件如DevExpress的GridControl,这个可以在RowStyle事件中进行着色。如果使用微软自带的GridView的话,可以参考如下代码(搜索来的,我不用微软自带控件)

ridView指定行颜色

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
       try
       {
           if (e.Row.RowType == DataControlRowType.DataRow)
          {
              string MyCity = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "城市"));
               if (MyCity == this.TextBox1.Text)
               {
                   e.Row.BackColor = System.Drawing.Color.Yellow;
               }
            }
     }
     catch (Exception MyEx)
       {
            Response.Write(MyEx.Message);
       }
   }



查看完整回答
反对 回复 2018-08-01
?
森栏

TA贡献1810条经验 获得超5个赞

在载入第二个表中的数据的时候,把数据和第一张表的数据进行比较,数据变化了的就设置要要显示这个数据的单元格的的字体为红色

查看完整回答
反对 回复 2018-08-01
?
慕村9548890

TA贡献1884条经验 获得超4个赞

数据库问题啊,好像和GridView无关啊。查出来后多一个字段标示就行;如果纯粹是客户端,用ViewState和IsPostBack就可以实现所有功能。

查看完整回答
反对 回复 2018-08-01
  • 3 回答
  • 0 关注
  • 839 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信