2017-01-18 45 views
0

我有一個DataGrid,我想改變整個行的背景顏色,當我鼠標懸停。如何更改DataGrid行的背景顏色?

我試過使用e.Item.Attributes["onmouseover"] = "this.style.color='red'";但這隻會改變行中文本的顏色。我想突出顯示整行。 如何設置背景顏色來更改代碼背後的DataGrid中的行?

回答

0
Private Sub DataGridID_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGridID.ItemDataBound 

    If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then 

     ' Do the mouseover and mouseout javascript 
     Dim oBGcolour As String 

     If e.Item.ItemType = ListItemType.Item Then 
      oBGcolour = Right(Hex(DataGridID.ItemStyle.BackColor.ToArgb()), 6) 
     ElseIf e.Item.ItemType = ListItemType.AlternatingItem Then 
      oBGcolour = Right(Hex(DataGridID.AlternatingItemStyle.BackColor.ToArgb()), 6) 
     End If 

     e.Item.Attributes.Add("onmouseover", "this.style.background='#cdcdcd';") 
     e.Item.Attributes.Add("onmouseout", "this.style.background='#" & oBGcolour & "';") 

    End If 

End Sub