介紹ASP.NET彈出窗口
ASP.NET彈出窗口控件, 是MSN Messenger 提醒(alert)的網(wǎng)頁(yè)版,通過(guò)定義顏色風(fēng)格可以修改圖形的外觀.支持拖放操作.一個(gè)很重要的特性是支持絕大多數(shù)瀏覽器.在最新版本的Mozilla, IE和Opera下測(cè)試通過(guò),在不支持filter的瀏覽器中UI會(huì)有些差異.控件的很多屬性可直接使用HTML代碼,以實(shí)現(xiàn)圖片等豐富的表現(xiàn)形式.
ASP.NET彈出窗口控件PopupWindow, 可用于通知用戶重要的信息,比如在web email客戶端通知用戶新消息/信件. 當(dāng)用戶在系統(tǒng)內(nèi)交流時(shí)需要通知他有人找他聊天. 用此控件的好處是不占網(wǎng)頁(yè)的空間又能醒目得引起用戶的注意. 另外可用于顯示廣告信息.
錨定彈出控件PopupWinAnchor,可以讓彈出窗口控件更快,頁(yè)面加載更少.比如我們可以用以實(shí)現(xiàn)表單填寫(xiě)的即時(shí)幫助.當(dāng)textbox收到輸入焦點(diǎn)時(shí)即顯示動(dòng)態(tài)幫助. 另外,可以用來(lái)在每個(gè)textbox后加一個(gè)button, 當(dāng)用戶點(diǎn)擊button時(shí)顯示彈出窗口.
控件有兩個(gè)事件: 點(diǎn)擊彈出窗口上鏈接時(shí)的事件LinkClicked, 點(diǎn)擊右上角關(guān)閉按鈕時(shí)的PopupClosed. 根據(jù)ActionType屬性(如下)的不同,有三種處理事件的方式:
(1)MessageWindow (默認(rèn)) - 控件會(huì)打開(kāi)新的瀏覽器窗口,其中顯示Text屬性的內(nèi)容.
(2)OpenLink - 控件可以執(zhí)行JavaScript操作或打開(kāi)Link屬性中的新頁(yè)面. 生成的<A>標(biāo)簽的target屬性也是可以改變的. 生成的代碼是這個(gè)樣子的: <a href="[Link]" target="[LinkTarget]">Link..</a>, 因此得當(dāng)心Link屬性中不要使用引號(hào). LinkTarget非空時(shí)才會(huì)加上Target屬性.
(3)RaiseEvents - 控件觸發(fā)服務(wù)器端的 LinkClicked 或 PopupClosed 事件
在頁(yè)面中使用此控件非常簡(jiǎn)單. VS.NET中,只需要在工具箱中用"添加刪除項(xiàng)"來(lái)選中控件的dll文件,然后從工具箱中把該控件拖放頁(yè)面中.
設(shè)計(jì)器:
控件有良好的設(shè)計(jì)時(shí)支持,我們可以更改所有屬性,Action類別中,我們可以定義當(dāng)用戶點(diǎn)擊鏈接和關(guān)閉窗口時(shí)控件的行為, Text和Design類別中,我們可以修改控件的外表和顯示的消息.在Behavior中,我們可以改變時(shí)間間隔(何時(shí)顯示/隱藏彈出窗口), AutoShow屬性指控件是否在頁(yè)面加載后即顯示,DragDrop屬性為真時(shí),用戶可以在頁(yè)面中拖放控件的位置. 如果我們把ActionType 設(shè)為 MessageWindow,Window類別可以用來(lái)改變顯示窗口的屬性. Layout類別中的屬性可以用來(lái)控制位置(從窗口左下角或右下角的位移).
代碼
下面的代碼顯示了如何改變一些屬性并顯示控件.
- <!-- Popup.aspx -->
- <%@ Register TagPrefix="cc1" Namespace="EeekSoft.Web"
- Assembly="EeekSoft.Web.PopupWin" %>
- <cc1:popupwin id="popupWin" runat="server" visible="False"
- colorstyle="Blue" width="230px" height="100px" dockmode="BottomLeft"
- windowscroll="False" windowsize="300, 200"></cc1:popupwin>
- // Anchor.aspx.cs
- // Handle onclick event ..
- popupAnchor.HandledEvent="onclick";
- // .. of spanReopen element
- popupAnchor.LinkedControl="spanReopen";
- // Show popupWin when event occurs
- popupAnchor.PopupToShow="popupWin";
- // Popup win is visible ..
- popupWin.Visible=true;
- // .. and will be displayed when page is loaded
- popupWin.AutoShow=true;
以上介紹ASP.NET彈出窗口。
【編輯推薦】