Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound
    If e.Item.ItemIndex <> -1 Then      e.Item.Attributes.Add("onmouseover", "this.bgColor='#C1D2EE'")
      If e.Item.ItemIndex Mod 2 = 0 Then
        e.Item.Attributes.Add("bgcolor", "#FFFFFF")
        e.Item.Attributes.Add("onmouseout", "this.bgColor=document.getElementById('DataGrid1').singleValue")
      Else
        e.Item.Attributes.Add("bgcolor", "oldlace")
        e.Item.Attributes.Add("onmouseout", "this.bgColor=document.getElementById('DataGrid1').oldValue")
      End If
    Else
      DataGrid1.Attributes.Add("oldValue", "oldlace")
      DataGrid1.Attributes.Add("singleValue", "#FFFFFF")
    End If
  End Sub

解决方案 »

  1.   

    在你帮定datagrid以后,执行下列代码:

    foreach (DataGridItem myItem in this.DataGrid1.Items)
    {
    myItem.Attributes.Add("onmouseover","this.bgColor='gray' ");
    myItem.Attributes.Add("onmouseout","this.bgColor='white' ");
    }
      

  2.   

    晕````那我的为什么不行????
    <asp:DataGrid id="MyDataGrid" runat="server" AutoGenerateColumns="False" Width="98%" CellPadding="2"
    BorderWidth="1pt" GridLines="None">
    <ItemStyle CssClass="line-bg"></ItemStyle>
    <HeaderStyle Font-Size="X-Small" HorizontalAlign="Center" ForeColor="#FFFFCC" BackColor="#006699"></HeaderStyle>
    <Columns>
    <asp:TemplateColumn HeaderText="表情">
    <HeaderStyle Width="30px"></HeaderStyle>
    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle"></ItemStyle>
    <ItemTemplate>
    <%#Getface( Convert.ToString( DataBinder.Eval(Container, "DataItem.face")),Convert.ToString( DataBinder.Eval(Container, "DataItem.istop")) )%>
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:TemplateColumn HeaderText="主题">
    <HeaderStyle Width="50%"></HeaderStyle>
    <ItemTemplate>
    <%#GetTitle( Convert.ToString( DataBinder.Eval(Container, "DataItem.title")),Convert.ToString( DataBinder.Eval(Container, "DataItem.id")),Convert.ToInt32( DataBinder.Eval(Container, "DataItem.hits")),Convert.ToInt32( DataBinder.Eval(Container, "DataItem.recount")),Convert.ToInt32( DataBinder.Eval(Container, "DataItem.hour")) )%>
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:TemplateColumn HeaderText="作者">
    <HeaderStyle Width="60px"></HeaderStyle>
    <ItemTemplate>
    <asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.username") %>' ID="Label1">
    </asp:Label>
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:TemplateColumn HeaderText="回复/人气">
    <HeaderStyle Width="70px"></HeaderStyle>
    <ItemTemplate>
    <asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.recount") %>' ID="Label2">
    </asp:Label>
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:BoundColumn DataField="addtime" HeaderText="发表时间">
    <HeaderStyle Width="120px"></HeaderStyle>
    </asp:BoundColumn>
    </Columns>
    </asp:DataGrid>---------------------------------------
    private void MyDataGrid_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    if (e.Item.ItemIndex >= 0)
    {
    e.Item.Attributes["onmouseover"] = "this.style.backgroundColor='#C0FFFF';";
    e.Item.Attributes["onmouseout"] = "this.style.backgroundColor='';";
    }
    }
      

  3.   

    http://aspalliance.com/Colt/Articles/Article3.aspx
      

  4.   

    你在<asp:DataGrid id="MyDataGrid" runat="server" AutoGenerateColumns="False" Width="98%" CellPadding="2"
    BorderWidth="1pt" GridLines="None">
    没加OnItemCommand="MyDataGrid_ItemCommand"
    不过我是用itemdatabound事件实现的:
    public void MyDataGrid_OnItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
    e.Item.Attributes.Add("onmouseout", "this.style.backgroundColor='#FFFFFF'")   ;
    e.Item.Attributes.Add("onmouseover", "this.style.backgroundColor='LightGoldenrodYellow'") ; 
     }
    }
      

  5.   

    别忘了加:
    OnItemDataBound="MyDataGrid_OnItemDataBound"
    效果:http://218.84.107.5/s.aspx