資源描述:
《aspnet 實現(xiàn)驗證碼功能的web控件》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、Asp.net實現(xiàn)驗證碼功能的Web控件Asp.net的設計方式和設計理念和其他的如Asp,Jsp,Php,Perl等都不一樣,幾乎是完全的面向對象設計!代碼的復用就是其中差異較大的特點之一,Asp.net除了可以用Include以外,還提供了比較有特點的Web控件,包括:Ascx形式和帶設計時支持的控件[本文屬于后者],為了熟悉這些新概念,我自己寫了個Web控件。在實際項目中運行使用良好,以后,要有時間,我還將不斷改進。ValidateCode控件的使用方法:第一步:編譯我提供的原代碼,然后,在Studio.net2003工具
2、欄上,選擇"添加/移除項",選中編譯好的dll文件。第二步:工具欄上就會多一個Web控件ValidateCode,做好一個Web窗體,在Studio.net2003開發(fā)界面上,直接把控件拖到WebForm上,就OK!第三步:在該控件的GraphicOK事件中獲取,驗證碼的字符信息,用于和用戶錄入做比較!最后一步:在網站的根目錄下,建一個temp目錄(也可以自己指定目錄),用于存放驗證碼圖片,不用擔心,代碼會自動刪除無用的圖片!原代碼如下:usingSystem;usingSystem.Web.UI;usingSystem.Web
3、.UI.WebControls;usingSystem.ComponentModel;usingSystem.IO;usingSystem.Drawing;usingSystem.Drawing.Drawing2D;usingSystem.Drawing.Imaging;20currencydeposit,weprescribeapassonaregularbasis,qilucardaccountonaregularbasis),certificatebondsandsavingsbonds(electronic);3.not
4、drawnonabanksavingscertificate,certificatebondsapplyformortgageloans,acceptingonlythelendernamespaceWebValidateCode{//////ValidateCode的摘要說明。///設計者:王海波2004-11-20//////publicenumGraphicType{Jpg=0,Gif=1,Png=2,Bmp=3,}//[ToolboxBitmap(@"D:DotnetAppVal
5、idateCodeValidateCode.bmp")]//設置控件在工具箱上的圖標publicclassValidateCode:System.Web.UI.WebControls.WebControl,INamingContainer{privateintpCodelen=5;privateintpChartWidth=100;privateintpChartHeight=20;privateGraphicTypepChartType;privatestringpAuthenCode;privatestringpTempI
6、mageURLPath="/temp";privatestringpAuthenImageFullname;privatestringpAuthenImageFullURL;//生成校驗碼的變量startprivateBitmapvalidateImage;privateGraphicsg;//生成校驗碼的變量EndprivateTextBoxtxt=newTextBox();privateSystem.Web.UI.WebControls.Imageimg=newSystem.Web.UI.WebControls.Image(
7、);#region定義控件事件publicdelegatevoidGraphicCreated(objectsender,EventArgse);20currencydeposit,weprescribeapassonaregularbasis,qilucardaccountonaregularbasis),certificatebondsandsavingsbonds(electronic);3.notdrawnonabanksavingscertificate,certificatebondsapplyformortgage
8、loans,acceptingonlythelenderpubliceventEventHandlerGraphicOK;//在校驗圖片生成結束以后觸發(fā)protectedvirtualvoidOnGraphicOK(objectsender,EventArgse