2012-01-07 61 views
0

我是一名新的ASP.NET开发人员。我现在使用DetailsView来显示数据库中的一些数据。我需要突出显示DetailsView中的某些两行。两行都是VARCHAR数据类型。 那么如何做到这一点?如何突出显示DetailsView中的特定行?

+0

选择多行,或更改背景颜色以指示选择? – user978122 2012-01-07 06:25:27

回答

0

覆盖数据绑定事件并设置e.Row.BackColor = System.Drawing.Color.Red;或者什么颜色,如果您有执行查找需要突出显示的行的逻辑。

protected void detailsView_RowDataBound(object sender, 
GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     if(...)//some condition for selection of row to be higlighted 
     { 
      e.Row.BackColor = System.Drawing.Color.Red; 
     } 
    } 
} 

如果你需要一个perticular行,说第四行被突出显示,并且是固定不变的,那么你可以直接这样

detailsViewGrid.Rows[3].Row.BackColor = System.Drawing.Color.Red; 

你需要记住,这段代码是唯一只写入那些会在grid_rowdatabound事件后发生的事件(如预渲染)

+0

是的,我想要的只是第四行被突出显示,并且已修复。那么该怎么做?我把它放在detailView_RowDataBound(object sender, GridViewRowEventArgs e) 里面,但它不起作用。它给出了以下错误:名称:'detailsView'不存在是当前上下文 – user1093651 2012-01-07 07:27:59

+0

其实,我认为没有RowDataBound的detailsview。 – user1093651 2012-01-07 07:33:28

相关问题