日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET自定义控件组件开发 第三章 为控件添加事件 前篇

發布時間:2023/12/1 asp.net 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET自定义控件组件开发 第三章 为控件添加事件 前篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?????

第三章 為控件添加事件?????????

???????

??????好了,我們之前以前開發一個控件。而且也添加了屬性,開發也很規范,但是那個控件還差最后一點:添加事件。

?????

系列文章鏈接:

ASP.NET自定義控件組件開發 第一章 待續

ASP.NET自定義控件組件開發 第一章 第二篇 接著待續

ASP.NET自定義控件組件開發 第一章 第三篇

ASP.NET自定義控件組件開發 第二章 繼承WebControl的自定義控件

ASP.NET自定義控件組件開發 第三章 為控件添加事件 前篇

ASP.NET自定義控件組件開發 第三章 為控件添加事件 后篇

ASP.NET自定義控件組件開發 第四章 組合控件開發CompositeControl

ASP.NET自定義控件組件開發 第四章 組合控件開發CompositeControl 后篇 --事件冒泡

ASP.NET自定義控件組件開發 第五章 模板控件開發

ASP.NET2.0自定義控件組件開發 第六章 深入講解控件的屬性

ASP.NET2.0組件控件開發視頻 初體驗

?????ASP.NET的開發都是事件驅動的,現在我們就來為控件添加事件。在說事件之前,希望大家對C#的語法要熟悉,對委托

很事件要懂。

?????

?????其實定義事件的步驟很簡單:

??????????1.聲明一個委托。

??????????2.定義一個攜帶事件信息的類。

??????????3.定義事件

??????????4.定義一個通事件發生后,通知其他對象的方法

?

?????????首先來理清一下我們的思路:

??????????

??????????1.在下拉框中選中一個值,并且在輸入框中也輸入相應的值。

?

??????????2.我們在頁面點擊“提交”按鈕,按鈕就觸發我們自定義的一個事件Validate(驗證輸入信息的正確行)。

?

?????????我們在提交的時候要把控件的信息傳給服務器,所以我們要定義一個事件信息類,來攜帶事件發生時,把個信息類送

?

到服務器。

?

?????事件定義如下:

?

??????????1.定義一個攜帶事件信息的類。

?

???????????????

Code
?1?using?System;
?2?using?System.Collections.Generic;
?3?using?System.Text;
?4?
?5?namespace?CreditCardForm
?6?{
?7?????public?class?ValidateCreditCardFormEventArgs:EventArgs?
?8?????{
?9?????????private?string?paymentMethod;
10?????????public?string?PaymentMethod
11?????????{
12?????????????get
13?????????????{
14?????????????????return?this.paymentMethod;
15?????????????}
16?????????}
17?
18?
19?????????private?string?creditCardNo;
20?????????public?string?CreditCardNo
21?????????{
22?????????????get
23?????????????{
24?????????????????return?this.creditCardNo;
25?????????????}
26?????????}
27?
28?
29?????????private?string?cardholderName;
30?????????public?string?CardholderName
31?????????{
32?????????????get
33?????????????{
34?????????????????return?this.cardholderName;
35?????????????}
36?????????}
37?
38?????????private?DateTime?expirationDate;
39?????????public?DateTime?ExpirationDate
40?????????{
41?????????????get
42?????????????{
43?????????????????return?this.expirationDate;
44?????????????}
45?????????}
46?
47?
48?????????public?ValidateCreditCardFormEventArgs(string?paymentmenthod,?string?creditcardno,
49?????????????string?cardholdername,?DateTime?expirationdate)
50?????????{
51?????????????this.paymentMethod?=?paymentmenthod;
52?????????????this.creditCardNo?=?creditcardno;
53?????????????this.cardholderName?=?cardholdername;
54?????????????this.expirationDate?=?expirationdate;
55?????????}
56?????}
57?}
58?

?

?????

???????????????2.聲明一個委托。

?

?

Code
1?using?System;
2?using?System.Collections.Generic;
3?using?System.Text;
4?
5?namespace?CreditCardForm
6?{
7?????public?delegate?void?ValidateCreditCardFormEventHandler(object?sender,ValidateCreditCardFormEventArgs?args);
8?}
9?

??????????

??????????3.定義事件

?????

Code
1??public?event?ValidateCreditCardFormEventHandler?ValidateCreditCardForm;

?

??????????4.通事件發生后,通知其他對象的方法

?

Code
1??
2?//這個方法是受保護的虛方法
3?protected?void?OnValidateCreditCardForm(ValidateCreditCardFormEventArgs?args)
4?????????{
5??????????????if?(ValidateCreditCardForm?!=?null)
6?????????????????handler(this,?args);
7?????????}

?

??????????這樣幾個步驟之后,控件的事件就寫完了。大家試試! 有問題,我們下篇接著說!

?

??????????今天寫到這里,希望大家反饋信息,聽聽大家的想法!

?

轉載于:https://www.cnblogs.com/yanyangtian/archive/2008/08/11/1265466.html

總結

以上是生活随笔為你收集整理的ASP.NET自定义控件组件开发 第三章 为控件添加事件 前篇的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。