Download demo project (C# and VB.NET) - 38.1 Kb Download control with source - 37.7 Kb Download control documentation - 71.1 Kb Open online sample [^].
在 codeproject 上看到一个很不错的控件,完全能够自定义弹出窗口的样式、内容、链接,该控件支持Mozilla, Internet Explorer 和 Opera,我试用了一下,效果非常不错,推荐大家使用。
下面主要介绍该控件结合cookie实现登录后只提醒一次的功能!
一、定义变量}
#region members protected AgronetControl.PopupWin pwVegnet; private string downmoontest="downmoontest"; #endregion
二、按钮事件View Code
#region Events private void Page_Load(object sender, System.EventArgs e) { pwVegnet.LinkClicked+=new EventHandler(pwVegnet_LinkClicked); this.pwVegnet.Visible=false; if(!IsPostBack) { bool bl=IsShowMessage(); if(bl) { SetMessage(); setCookies(downmoontest,"yes",1); } else { this.pwVegnet.Visible=false; } } } /// <summary> /// 注销按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnLogOff_Click(object sender, System.EventArgs e) { RemoveAll(); } private void pwVegnet_LinkClicked(object sender, EventArgs e) { //此处可以加上"下次是否显示之类的脚本"---downmoon Page.Response.Redirect(@"http://www.vegnet.com.cn/user/"); }
三、主要方法:View Code
#region Methods private void SetMessage() { pwVegnet.HideAfter = 5000 ; pwVegnet.Visible = true ; pwVegnet.Title = textTitle.Text; pwVegnet.Message = textMsg.Text; pwVegnet.Text = textFull.Text; pwVegnet.DragDrop = true ; pwVegnet.OffsetX = 30 ; pwVegnet.OffsetY = 15 ; pwVegnet.DockMode = AgronetControl.PopupDocking.BottomRight; // 随机弹出窗口样式 int t = GetRandomID( 1 , 4 ); switch (t) { case 1 : pwVegnet.ColorStyle = AgronetControl.PopupColorStyle.Red; break ; case 2 : pwVegnet.ColorStyle = AgronetControl.PopupColorStyle.Green; break ; case 3 : pwVegnet.ColorStyle = AgronetControl.PopupColorStyle.Blue; break ; case 4 : pwVegnet.ColorStyle = AgronetControl.PopupColorStyle.Violet; break ; default :pwVegnet.ColorStyle = AgronetControl.PopupColorStyle.Green; break ; } pwVegnet.Link = @" http://www.vegnet.com.cn " ; } private bool IsShowMessage() { string str = getCookies(downmoontest); if (str == string .Empty || str.ToLower() == " no " ) { return true ; } else { return false ; } } public void MsgBox( string strDebug) { Page.Response.Write( " <script language=javascript>alert(' " + strDebug.Replace( " ' " , "" ).Replace( " " , "" ) + " ');</script> " ); // Page.Response.End(); } public static string RandomKey( int b, int e) { return DateTime.Now.ToString( " yyyyMMdd-HHmmss-fff- " ) + GetRandomID(b,e); } public static int GetRandomID( int minValue, int maxValue) { Random ri = new Random( unchecked (( int )DateTime.Now.Ticks)); int k = ri.Next(minValue,maxValue); return k; } #region 读cookie private void setCookies( string cook, string valuee, int num) { // Response.Cookies.Clear(); HttpCookie cookie ; cookie = Request.Cookies[cook]; if (cookie == null ) { cookie = new HttpCookie(cook); cookie.Value = valuee; cookie.Expires = DateTime.Now.AddDays(num); HttpContext.Current.Response.Cookies.Add(cookie); } else { cookie.Value = valuee; } } #endregion #region 写cookie private string getCookies( string cook) { HttpCookie readcookie = Request.Cookies[cook]; if (readcookie != null && readcookie.Value != null ) { return readcookie.Value; } else { return string .Empty; } } #endregion #region 去除SESSION/注销 /// <summary> /// 去除SESSION/注销 /// </summary> public void RemoveAll() { HttpCookieCollection cooks = HttpContext.Current.Response.Cookies; cooks[downmoontest].Expires = new DateTime( 1999 , 10 , 12 ); HttpContext.Current.Response.Cookies.Add(cooks[downmoontest]); } #endregion #endregion
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦