最近公司要完成一个实时弹出消息的功能。在网上找到一个第三方控件popupwin,该控件弹出窗口与msn的好友弹出窗口一样,效果挺不错的。大家可以结合timer控件实时获取数据,有选择的弹出小窗口。
Popupwin+Ajax异步刷新
先在页面注册该控件
<%@ Register Assembly="EeekSoft.Web.PopupWin" Namespace="EeekSoft.Web" TagPrefix="cc1" %>
在页面加入2个updatapanel 和1个scriptmanager
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<font
color="red">当前消息数:</font><asp:Label ID="lbshow"
runat="server" ForeColor="red"></asp:Label>
<cc1:PopupWin ID="pw" runat="server" ColorStyle="red" Title="欢迎您登陆管理页面" DragDrop="False"
Height="109px" Width="158px" AutoShow="true" ActionType="RaiseEvents" Visible="false"
DockMode="BottomRight"></cc1:PopupWin>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Timer ID="Timer1" runat="server"
OnTick="Timer1_Tick" Interval="30000" Enabled="true">
</asp:Timer>
</ContentTemplate>
</asp:UpdatePanel>
接下来就需要通过C#来控制popupwin 了
try
{
T1.Enabled = false;
popupw.Visible = true;
popupw.HideAfter = -1;
popupw.AutoShow = true;
string msg = "";
msg += "<a
href=\"Inspector_Monitor\\ReportDetail.aspx?id=1 "\"
target=\"mainFrame\">" </a><br />";
popupw.Message = msg;
popupw.Title = "有新的消息";
popupw.ColorStyle = EeekSoft.Web.PopupColorStyle.Red;
popupw.DockMode = EeekSoft.Web.PopupDocking.BottomRight;
pw.Visible = true;
popupw.WindowScroll = true;
popupw.Visible = true;
Session["CurTime"] = DateTime.Now.ToString();
}
finally
{
T1.Enabled = true;
}