1.html代码 <HTML> <HEAD> <title>DataGridTooltip</title> <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <style type="text/css"> .transparent {}{ BORDER-RIGHT: indianred 1px solid; BORDER-TOP: indianred 1px solid; DISPLAY: none; FILTER: alpha(opacity=85); BORDER-LEFT: indianred 1px solid; BORDER-BOTTOM: indianred 1px solid; POSITION: absolute; BACKGROUND-COLOR: infobackground } </style> <script language="javascript"> function Show(Country, City, Address, PostalCode, Phone, Fax) { //debugger; document.getElementById("td1").innerText="国家:"+Country; document.getElementById("td2").innerText="城市:"+City; document.getElementById("td3").innerText="地址:"+Address; document.getElementById("td4").innerText="邮编:"+PostalCode; document.getElementById("td5").innerText="电话:"+Phone; document.getElementById("td6").innerText="传真:"+Fax; x = event.clientX + document.body.scrollLeft; y = event.clientY + document.body.scrollTop + 20; Popup.style.display="block"; Popup.style.left = x; Popup.style.top = y; } function Hide() { Popup.style.display="none"; } </script> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <div id="Popup" class="transparent"> <table border="0" cellpadding="0" bgColor="#00ccff"> <tr> <td align="center" bgcolor="indianred"><font color="white">联系方式</font></td> </tr> <tr> <td id="td1"></td> </tr> <tr> <td id="td2"></td> </tr> <tr> <td id="td3"></td> </tr> <tr> <td id="td4"></td> </tr> <tr> <td id="td5"></td> </tr> <tr> <td id="td6"></td> </tr> </table> </div> <asp:DataGrid id="DataGrid1" runat="server"> <FooterStyle ForeColor="#003399" BackColor="#99CCCC"></FooterStyle> <SelectedItemStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999"></SelectedItemStyle> <ItemStyle ForeColor="#003399" BackColor="White"></ItemStyle> <HeaderStyle Font-Bold="True" ForeColor="#CCCCFF" BackColor="#003399"></HeaderStyle> <PagerStyle HorizontalAlign="Left" ForeColor="#003399" BackColor="#99CCCC" Mode="NumericPages"></PagerStyle> </asp:DataGrid> </form> </body></HTML> 2.cs代码 public class DataGridTooltip : System.Web.UI.Page { protected System.Web.UI.WebControls.DataGrid DataGrid1; private DataTable dt; Page_Load#region Page_Load private void Page_Load(object sender, System.EventArgs e) { if(!IsPostBack) { SqlConnection cnn = new SqlConnection(); cnn.ConnectionString = "data source=meng;initial catalog=Northwind;password=sa;persist security info=True;user id=sa;packet size=4096"; string sqlstr = "select Top 16 CustomerID, CompanyName,ContactTitle,Country, City, Address,PostalCode,Phone,Fax from Customers"; cnn.Open(); SqlDataAdapter ad = new SqlDataAdapter(sqlstr,cnn); dt = new DataTable(); ad.Fill(dt); DataGrid1.DataSource = dt; DataGrid1.DataBind(); } } #endregion DataGrid1_ItemDataBound#region DataGrid1_ItemDataBound private void DataGrid1_ItemDataBound(object sender,System.Web.UI.WebControls.DataGridItemEventArgs e) { if(e.Item.ItemType == ListItemType.AlternatingItem|| e.Item.ItemType == ListItemType.Item) { e.Item.Attributes.Add("onmouseover","this.oldcolor=this.style.backgroundColor;this.style.backgroundColor='#C8F7FF';"); e.Item.Attributes.Add("onmousemove", "Show('"+dt.Rows[e.Item.ItemIndex]["country"].ToString()+"','" +dt.Rows[e.Item.ItemIndex]["City"].ToString()+"','" +dt.Rows[e.Item.ItemIndex]["Address"].ToString()+"','" +dt.Rows[e.Item.ItemIndex]["PostalCode"].ToString()+"','" +dt.Rows[e.Item.ItemIndex]["Phone"].ToString()+"','" +dt.Rows[e.Item.ItemIndex]["Fax"].ToString()+"');"); e.Item.Attributes.Add("onmouseout", "this.style.backgroundColor=this.oldcolor;Hide();"); } } #endregion Web Form Designer generated code#region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); } /**//// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound); this.Load += new System.EventHandler(this.Page_Load); } #endregion }