altas(ajax)控件(十三):悬浮菜单HoverMenu

本文介绍如何在ASP.NET GridView中使用HoverMenu实现数据行的悬浮菜单效果,包括编辑和删除功能。通过示例代码展示了HoverMenuExtender的配置及联动效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HoverMenu 可以附加到任何一个ASP.NET WebControl 上,它结合一个Panel产生悬浮效果。
下面一个例子, ASP.NET GridView从数据库里查询并显示数据。当鼠标移动到GridView上时,每一行都会出现悬浮菜单HoverMenu,我们可以通过菜单中的命令操作数据。
例子:
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False" DataKeyNames="ItemID" DataSourceID="ObjectDataSource1"
ShowHeader="False" Width="100%" BackColor="Azure" GridLines="None" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Panel CssClass="popupMenu" ID="PopupMenu" runat="server">
<div style="border:1px outset white;padding:2px;">
<div><asp:LinkButton ID="LinkButton1" runat="server" CommandName="Edit" Text="Edit" /></div>
<div><asp:LinkButton ID="LinkButton2" runat="server" CommandName="Delete" Text="Delete" /></div>
</div>
</asp:Panel>
<asp:Panel ID="Panel9" runat="server">
<table width="100%">
<tr>
<td width="25%"><asp:Label Font-Bold="true" ID="Label1" runat="server"
Text='<%# HttpUtility.HtmlEncode(Convert.ToString(Eval("Title"))) %>' /></td>
<td width="50%"><asp:Label ID="Label2" runat="server"
Text='<%# HttpUtility.HtmlEncode(Convert.ToString(Eval("Description"))) %>' /></td>
<td width="25%"><asp:Label ID="Label3" runat="server" Text='<%# Eval("Priority") %>' /></td>
</tr>
</table>
</asp:Panel>
<ajaxToolkit:HoverMenuExtender ID="hme2" runat="Server"
HoverCssClass="popupHover"
PopupControlID="PopupMenu"
PopupPosition="Left"
TargetControlID="Panel9"
PopDelay="25" />
</ItemTemplate>
<EditItemTemplate>
<asp:Panel ID="Panel9" runat="server" Width="80%">
<table width="100%">
<tr>
<td width="30%">Title:<br /><asp:TextBox Font-Bold="true" ID="TextBox1" runat="server"
Text='<%# Bind("Title") %>' Width="100" /></td>
<td width="55%">Desc:<br /><asp:TextBox ID="TextBox2" runat="server"
Text='<%# Bind("Description") %>' Width="150" /></td>
<td width="15%">Pri:<br /><asp:TextBox ID="TextBox3" runat="server"
Text='<%# Bind("Priority") %>' Width="40" /></td>
</tr>
</table>
</asp:Panel>
<ajaxToolkit:HoverMenuExtender ID="hme1" runat="Server"
TargetControlID="Panel9"
PopupControlID="PopupMenu"
HoverCssClass="popupHover"
PopupPosition="Right" />
<asp:Panel ID="PopupMenu" runat="server" CssClass="popupMenu" Width="80">
<div style="border:1px outset white">
<asp:LinkButton ID="LinkButton1" runat="server"
CausesValidation="True" CommandName="Update" Text="Update" />
<br />
<asp:LinkButton ID="LinkButton2" runat="server"
CausesValidation="False" CommandName="Cancel" Text="Cancel" />
</div>
</asp:Panel>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
属性
说明
TargetControlID
显示的Plane的ID
HoverCssClass
显示的Plane的CSS
PopupPostion
悬浮的位置:Left (默认), Right, Top, Bottom, Center
OffsetX/OffsetY
相对于默认值的偏移值
PopDelay
出现Plane的延时,默认是100.
Animations
参照前面动画控件Animations
效果:http://asp.net/AJAX/Control-Toolkit/Live/HoverMenu/HoverMenu.aspx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值