多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

中國最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2

aspnet教程

  • ASP.NET 教程
  • ASP.NET 簡介
  • ASP.NET Razor

    ASP.NET MVC

    ASP.NET 編程指南

    ASP.NET 事件處理

    閱讀 (2106)

    事件處理

    事件是一個動作或發生的事,如鼠標單擊、按鍵、鼠標移動,或任何系統生成的通知。一個進程通過事件進行溝通。例如,中斷是系統生成的事件。當事件發生,應用程序也能夠回應和管理。

    ASP.NET 上的事件在用戶機器上引發,在服務器上處理。例如,一個用戶點擊了在瀏覽器中顯示的一個按鈕。一個點擊事件被引發。瀏覽器通過把它發送給服務器從而處理這個客戶端事件。

    服務器有一個子程序來描述當事件被引發時該做什么;這個被稱為事件處理程序。因此,當事件信息被傳遞給服務器,它會檢查點擊事件是否與事件處理程序有關聯。如果有關聯的話,事件處理程序就會被執行。

    事件參數

    ASP.NET 事件處理程序一般采用兩個參數并返回空。第一個參數代表了對象激發事件,第二個參數是事件參數。

    一個事件的一般句法是:

    private void EventName (object sender, EventArgs e);

    應用程序和會話事件

    最重要的應用程序事件是:

    • Application_Start - 當開啟應用程序或者網頁時被引發。
    • Application_End - 當停止應用程序或者網頁時被引發。

    同樣的,最常使用的會話事件是:

    • Session_Start – 當用戶最開始從應用程序上請求一個頁面被引發。
    • Session_End – 當會話結束后被引發。

    頁面和控件事件

    常見的頁面和控件事件有:

    • DataBinding – 當一個控件綁定到一個數據源時被引發。
    • Disposed – 當釋放頁面或者控件時被引發。
    • Error – 它是一個頁面事件,當有未處理的異常時發生。
    • Init – 當初始化頁面或者控件時被引發。
    • Load – 當加載頁面或者控件時被引發。
    • PreRender – 當顯示頁面或者控件時被引發。
    • Unload – 當從內存中卸載頁面或者控件時被引發。

    使用控件處理事件

    所有的 ASP.NET 控件作為類而實現,并且當用戶對其執行一個特定的動作時,它們會引發事件。比如說,當一個用戶點擊了一個按鈕,那就生成了 'Click' 事件。對于處理事件來說,有內置屬性和事件處理程序。事件處理應用程序被編碼作為一個事件的回應,并且對其采取適當的行動。

    默認情況下,Visual Studio 創建一個事件處理程序,包括處理條款的子程序。這個子句命名程序處理的控件和事件。

    button 控件的 ASP 標簽:

    <asp:Button ID="btnCancel" runat="server" Text="Cancel" />

    Click 事件的事件處理應用程序:

    Protected Sub btnCancel_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
    
       Handles btnCancel.Click
    
    End Sub

    一個事件同樣可以在沒有 Handles 子句的前提下被編碼。然后,處理程序必須根據適合控件屬性的適當事件進行命名。

    button 控件的 ASP 標簽:

    <asp:Button ID="btnCancel" runat="server" Text="Cancel" Onclick="btnCancel_Click" />

    Click 事件的事件處理應用程序:

    Protected Sub btnCancel_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    
    End Sub

    常見的控件事件有:

    事件屬性控件
    ClickOnClick按鈕,圖像按鈕,鏈接按鈕,圖像導位圖
    CommandOnCommand按鈕,圖像按鈕,鏈接按鈕
    TextChangedOnTextChanged文本框
    SelectedIndexChangedOnSelectedIndexChanged下拉菜單,列表框,單選按鈕列表,帶復選框的列表框
    CheckedChangedOnCheckedChanged復選框,單選按鈕

    一些事件導致表單立即發回到服務器,這些被稱為回調事件。例如,單擊事件像 Button.Click。

    一些事件則不會被立即發回到服務器,這些被稱為非回調事件。

    例如,改變事件或者選擇事件,像 TextBox.TextChanged 或者 CheckBox.CheckedChanged。這些非回調事件可以通過設置它們的 AutoPostBack 屬性為 true 便可立即使它們回調。

    默認事件

    頁面對象的默認事件是加載事件。相似地,每一個控件都有一個默認的事件。比如,按鈕控件的默認事件就是 Click 事件。

    默認事件處理程序可以在 Visual Studio 中創建,僅通過雙擊設計視圖中的控件。以下表格展示了一寫常見控件的默認事件:

    控件默認事件
    廣告控件(AdRotator)AdCreated
    項目列表(BulletedList)Click
    按鈕(Button)Click
    日歷控件(Calender)SelectionChanged
    復選框(CheckBox)CheckedChanged
    復選列表(CheckBoxList)SelectedIndexChanged
    數據表格(DataGrid)SelectedIndexChanged
    數據列表(DataList)SelectedIndexChanged
    下拉列表(DropDownList)SelectedIndexChanged
    超鏈接(HyperLink)Click
    圖像按鈕(ImageButton)Click
    熱點(ImageMap)Click
    超鏈接按鈕(LinkButton)Click
    單選或多選的下拉列表(ListBox )SelectedIndexChanged
    菜單(Menu)MenuItemClick
    單選按鈕(RadioButton)CheckedChanged
    單選按鈕組(RadioButtonList)SelectedIndexChanged

    示例

    這個例子包括一個簡單頁面,上面有控件標簽和一個按鈕控件。當頁面事件,例如 Page_Load,Page_Init,Page_PreRender 等等事件發生的時候,它就會發送一條信息,會由標簽控件顯示。當點擊一個按鈕,Button_Click 事件被引發,同樣發送一條由標簽展示的信息。

    創建一個新的網站,從控件工具框中拖拽一個標簽控件和按鈕控件。使用窗口屬性,相應地設置控件的 ID 為 .lblmessage. and .btnclick。設置按鈕控件的文本屬性為“Click”。

    標記文件(.aspx):

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" 
       Inherits="eventdemo._Default" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    
       <head runat="server">
          <title>Untitled Page</title>
       </head>
    
       <body>
          <form id="form1" runat="server">
             <div>
                <asp:Label ID="lblmessage" runat="server" >
    
                </asp:Label>
    
                <br />
                <br />
                <br />
    
                <asp:Button ID="btnclick" runat="server" Text="Click" onclick="btnclick_Click" />
             </div>
          </form>
       </body>
    
    </html>

    雙擊設計視圖并移動至文件后的代碼。Page_Load 事件是自動創建的,其中沒有任何的代碼。寫下以下的自我解釋的代碼行:

    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    
    using System.Xml.Linq;
    
    namespace eventdemo {
    
       public partial class _Default : System.Web.UI.Page {
    
          protected void Page_Load(object sender, EventArgs e) {
             lblmessage.Text += "Page load event handled. <br />";
    
             if (Page.IsPostBack) {
                lblmessage.Text += "Page post back event handled.<br/>";
             }
          }
    
          protected void Page_Init(object sender, EventArgs e) {
             lblmessage.Text += "Page initialization event handled.<br/>";
          }
    
          protected void Page_PreRender(object sender, EventArgs e) {
             lblmessage.Text += "Page prerender event handled. <br/>";
          }
    
          protected void btnclick_Click(object sender, EventArgs e) {
             lblmessage.Text += "Button click event handled. <br/>";
          }
       }
    }

    執行頁面。標簽顯示頁面加載,頁面初始化以及頁面預覽事件。點擊按鈕查看效果:

    image

    關閉
    程序員人生
    主站蜘蛛池模板: a网站在线观看免费网站 | jizzjizz视频 | 日本不卡视频网站 | 国内精品麻豆 | 国产女人久久精品 | 国产成人精品第一区二区 | 一区二区三区视频免费 | 日韩欧美亚洲一区二区综合 | 亚洲国产成人久久一区久久 | 簧片免费在线观看 | 亚洲成在线观看 | 国产精品自产拍在线观看 | 欧美精品福利视频 | 在线观看精品福利片香蕉 | 欧美成性色 | 老司机午夜精品99久久免费 | 天天久久综合 | 性色欧美 | 国产h在线观看 | 日本一区二区三区免费高清在线 | 最近免费2019中文字幕大全 | 伊人久久大香线焦在观看 | 美女一级牲交毛片视频 | 国产成人毛片精品不卡在线 | 欧美精品人爱a欧美精品 | 国产欧美久久精品 | 亚洲精品αv一区二区三区 亚洲精品播放 | 日本不卡在线一区二区三区视频 | 国产亚洲欧美精品久久久 | 亚洲一区二区三区不卡视频 | 亚洲伦理一区二区 | 久久www免费人成看片入口 | 亚洲高清在线 | 国产女人伦码一区二区三区不卡 | 456亚洲人成影院在线观 | 久久九九久精品国产 | 亚洲成人毛片 | 最近更新中文字幕4 | 亚洲黄色三级 | 亚洲最大福利视频 | 亚洲综合一区二区精品久久 |