.transparent{FILTER:alpha(opacity=85);BORDER-TOP:indianred1pxsolid;BORDER-RIG" />

DataGrid中的高级ToolTip

系统 1553 0
效果如下图所示:

实现原理:

DataGrid 中的每一行,绑定onmouseover、onmousemove、onmouseout事件,使的鼠标移动到行内时,自动显示一个<div>,鼠标移出该行,就把这个<div>隐藏掉。

实现代码:

前台:

1. 定义<div>的样式:

<style type="text/css">

.transparent { FILTER: alpha(opacity=85);

BORDER-TOP: indianred 1px solid;

BORDER-RIGHT: indianred 1px solid;

BORDER-LEFT: indianred 1px solid;

BORDER-BOTTOM: indianred 1px solid;

POSITION: absolute;

BACKGROUND-COLOR: infobackground;

DISPLAY: none }

</style>

2. 显示和隐藏窗体的脚本:

<script language=" JavaScript ">

// 显示弹出窗体

function Show(Country, City, Address, PostalCode, Phone, Fax)

{

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轴的坐标

x = event.clientX + document.body.scrollLeft;

// 获得鼠标的Y轴的坐标

y = event.clientY + document.body.scrollTop + 20;

// 显示弹出窗体

Popup.style.display="block";

// 设置窗体的X,Y轴的坐标

Popup.style.left = x;

Popup.style.top = y;

}

// 隐藏弹出窗体

function Hide()

{

// 隐藏窗体

Popup.style.display="none";

}

</script>

3. ToolTip 窗体的代码

<div id="Popup" class="transparent" style=" Z-INDEX: 200">

<table border="0" cellpadding="0" style="FONT-SIZE: x-small">

<tr>

<td align="middle" 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>

后台:

private DataTable dt;

private void Page_Load(object sender, System.EventArgs e)

{

// Put user code to initialize the page here

if(!IsPostBack)

{

SqlConnection cnn = new SqlConnection();

cnn.ConnectionString = "data source=localhost;initial catalog=Northwind;password=;"

+"persist security info=True;user id=sa;workstation id=APJ062;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);

grdCustomer.DataSource = dt;

grdCustomer.DataBind();

}

}

private void grdCustomer_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();");

}

}

DataGrid中的高级ToolTip


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论