如何选择gridview中的行,单击网格中的按钮时更改它的颜色

时间:2011-11-07 10:14:47

标签: asp.net

我有gridview。我已经在项目模板中手动添加了一个按钮来选择行,并且所有行都是自动生成的。当我点击那一行时,该行的颜色应该会改变。我不想要自动生成的选择按钮

2 个答案:

答案 0 :(得分:1)

在GridView上设置SelectedRowStyle-BackColor属性。

答案 1 :(得分:0)

您可以使用此属性更改行颜色...

//将此添加到后面的代码....

protected void MyGridView_RowCreated(object sender, GridViewRowEventArgs e)
{    
    string rowID = String.Empty;    
    if (e.Row.RowType == DataControlRowType.DataRow)    
    {    
       rowID = "<strong class="highlight"><vb_highlight>row</strong></vb_highlight>"+e.Row.RowIndex;    
       e.Row.Attributes.Add("id","<strong class="highlight"><vb_highlight>row</strong></vb_highlight>"+e.Row.RowIndex);

       e.Row.Attributes.Add("onclick","ChangeRowColor(" +"'" + rowID + "'" + ")");

    }    
}

//将此添加到设计师页面....

<script language ="javascript" type="text/javascript">
     document.body.style.cursor = 'pointer';    
    var oldColor = '';

     function ChangeRowColor(rowID)    
     {

         var <strong class="highlight">color</strong> = document.getElementById(rowID).style.backgroundColor;    
        if(<strong class="highlight">color</strong> != 'yellow')    
        oldColor = <strong class="highlight">color</strong>;    
         if(<strong class="highlight">color</strong> == 'yellow')    
                document.getElementById(rowID).style.backgroundColor = oldColor;   
        else 
          document.getElementById(rowID).style.backgroundColor = 'yellow';    
       }    
  </script>

我希望它会帮助你......