【问题标题】:highlight newly inserted row in grid view在网格视图中突出显示新插入的行
【发布时间】:2010-04-30 15:08:40
【问题描述】:

我设置了我的 gridview 以正确处理编辑、删除和插入操作。我的网格还支持分页和排序。我的问题是如何突出显示并转到网格中新插入的行?

【问题讨论】:

  • 你能指定什么属性区分“新插入”和旧插入吗?

标签: c# asp.net gridview


【解决方案1】:

创建一个属性为shouldHighlight,它将定义要突出显示的特定行。

无论添加或更新哪条记录,将标志设置为真,对于其他记录,设置为假。

在 RowDataBound 事件中, 检查特定行的标志是否为真,将 CSS 或背景颜色应用于该行。

 protected void grd_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                Record objR = (Record)e.Row.DataItem;
                if (objR.shouldHighLight)
                {
                    e.Row.BackColor = System.Drawing.Color.LightBlue;
                }
            }
        }

在我的示例中,Record 是一个类 作为

 public class Record {
        public string Name { get; set; }
        public bool shouldHighLight { get; set; }
    }

让我知道你的想法。

【讨论】:

    【解决方案2】:

    如果新插入的行始终是网格的最后一行(例如,第一行),那么您可以让网格在执行插入后选择第一行或最后一行。

    我的建议(如果此方法适用)是在插入后执行重新绑定后立即执行您的选择代码。如果由于任何原因您不能这样做,那么当插入新行时,在 Session 对象中存储一个值以指示已添加新行(例如Session("RowAdded") = True)并在您的网格上检查它数据绑定事件。

    HTH,

    理查德。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-07
      • 2020-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多