亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

Button控件的onclick、oncommand、commandname、CommandArgument的區別

2024-07-10 13:29:17
字體:
來源:轉載
供稿:網友

Button控件
Button控件在執行后被解析為<input type="submit">代碼,而Button控件的優點就在于提交程序的同時能夠傳遞參數,傳遞參數是靠CommandName與CommandArgument屬性來完成的。
舉兩個Button控件的例子。
<% @ Page Language="C#" %>
<Script Language="C#" Runat="Server">
public void Button_Click(Object sender,EventArgs e)
{
     string argName = ((Button)sender).CommandName;

    //sender為一個對象,故CommandArgument為string
     string argArg = ((Button)sender).CommandArgument;
     Label1.Text="您選中的動作為:<font color=red>"+argName+"</font>,動作目標是:<font color=red>"+argArg+"</font>";
}

</script>
<html>
<head>
<title></title>
</head>
<body>
<b>Button控件演示</b>
<hr>
<form runat="server">
<asp:Button id="Button1" CommandName="踢" CommandArgument="足球" Text="動作1" runat="server" OnClick="Button_Click" /><br>
<asp:Button id="Button2" CommandName="打" CommandArgument="籃球" Text="動作2" runat="server" OnClick="Button_Click" /><br>
<hr>
<asp:Label id="Label1" runat="server" />
</form>
</body>
</html>
////////////////////////////////////
<% @ Page Language="C#" %>
<Script Language="C#" Runat="Server">
public void Button_Click(Object sender,CommandEventArgs e)
{
     string argName = e.CommandName;

    //CommandEventArgsr為一個類,故CommandArgument.ToString();
     string argArg = e.CommandArgument.ToString();
     Label1.Text="您選中的動作為:<font color=red>"+argName+"</font>,動作目標是:<font color=red>"+argArg+"</font>";
}

</script>
<html>
<head>
<title></title>
</head>
<body>
<b>Button控件演示</b>
<hr>
<form runat="server">
<asp:Button id="Button1" CommandName="踢" CommandArgument="足球" Text="動作1" runat="server" OnCommand="Button_Click" /><br>
<asp:Button id="Button2" CommandName="打" CommandArgument="籃球" Text="動作2" runat="server" OnCommand="Button_Click" /><br>
<hr>
<asp:Label id="Label1" runat="server" />
</form>
</body>
</html>
分析:1.兩個程序用不同的方法完成相同的功能和效果。
           2.類CommandEventArgs有兩個公共屬性,CommandName(用來獲取命令的名稱)和CommandArgument(用來獲取命令的參數)。二者相互關聯。
           3.兩個程序分別用OnClick與OnCommand激發事件,區別在于OnCommand是帶值傳遞的。
           4.所有Button類的Web控件(如ImageButton,LinkButton)均含有CommandName和CommandArgument這兩個屬性。

問題:上文中兩個程序采用的參數CommandEventArgs,EventArgs有什么區別?為什么在第一個程序中使用EventArgs,而不能使用CommandEventArgs(已經驗證,出現“Button_Click”的重載均與委托“System.EventHandler”不匹配)?

例子:http://hi.baidu.com/fuhengyu/blog/item/b37e14fb3e6055264e4aea65.html

解決:在網上查資料得到的結果:

這類問題出現的原因就是在控件的一些事件里面調用了函數,而這些函數的參數與該事件所要用到的參數類型不一致。在MSDN中搜索OnPageIndexChanging、OnPageIndexChanged等關鍵字就可以得到:

C#
protected virtual void OnPageIndexChanged (EventArgs e)

C#
protected virtual void OnPageIndexChanging (DetailsViewPageEventArgs e)

C#
protected virtual void OnRowDeleting (GridViewDeleteEventArgs e)

C#
protected virtual void OnRowDeleted ( DataRowChangeEventArgs e)
這樣,在何種事件中使用什么樣的參數類型就一目了然了。還有后面的OnRowDeleted、OnRowDeleting也是同樣的道理。
相應事件:

public void MyList_Page(object sender, GridViewPageEventArgs e)
public void MyDataGrid_Delete(Object sender, GridViewDeleteEventArgs e)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品嫩草影院一区二区| 日韩精品中文字幕在线播放| 亚洲第一免费网站| 国产精品久久久久久亚洲影视| 国产69久久精品成人| 欧美大尺度在线观看| 精品国偷自产在线视频99| 亚洲一区国产精品| 久久视频免费在线播放| 97精品欧美一区二区三区| 国产精品高清在线观看| 国产欧美日韩最新| 亚洲欧美在线一区二区| 亚洲色图五月天| 日韩国产欧美精品一区二区三区| 国产精品国产三级国产专播精品人| 韩国精品美女www爽爽爽视频| 欧美国产日韩视频| 日韩精品视频免费专区在线播放| 欧美怡春院一区二区三区| 亚洲第一在线视频| 伊人男人综合视频网| 久久久久久国产精品三级玉女聊斋| 91av在线播放视频| 2019精品视频| www.国产精品一二区| 国产精品美女av| 国产日韩在线播放| 国产亚洲精品va在线观看| 日韩精品极品视频免费观看| 日韩中文字幕在线精品| 亚洲老头同性xxxxx| 97国产精品视频| 欧美成人免费在线视频| 伊人男人综合视频网| 国产成人福利夜色影视| 8090成年在线看片午夜| 国产日韩av在线| 午夜免费在线观看精品视频| 亚洲激情中文字幕| 久久久久久网站| 精品久久久久久久久久| 久久久免费av| 国产精品欧美在线| 久久在线免费观看视频| 亚洲电影免费观看高清完整版| 97精品久久久中文字幕免费| 欧美精品成人在线| 视频一区视频二区国产精品| 亚洲最大av网| 成人欧美一区二区三区黑人孕妇| 国产999精品久久久影片官网| 国内精品国产三级国产在线专| 欧美激情一级欧美精品| 国产色综合天天综合网| 亚洲精品美女在线| 日韩精品在线免费观看| 中文字幕av一区中文字幕天堂| 日本欧美一二三区| 日本欧美爱爱爱| 91精品国产成人| 亚洲精品999| 亚洲天堂网站在线观看视频| 亚洲国产婷婷香蕉久久久久久| 久久久国产精品x99av| 欧洲一区二区视频| 亚洲视频在线免费看| 性夜试看影院91社区| 91久久精品久久国产性色也91| 欧美成人小视频| 亚洲成年人影院在线| 日韩av在线网址| 91精品美女在线| 国产精品视频xxx| 国产成人一区二区三区电影| 久久人人爽人人爽人人片亚洲| 国外日韩电影在线观看| 国产精品热视频| 欧美日韩免费网站| 国产精品自产拍在线观| 亚洲2020天天堂在线观看| 影音先锋欧美精品| 亚洲成人在线视频播放| 久久精品免费电影| 国产精品福利观看| 国产精品久久77777| 国产精品专区h在线观看| 国产精品网址在线| 亚洲精品一二区| 色婷婷av一区二区三区在线观看| 97视频在线观看免费高清完整版在线观看| 国产成人精品久久二区二区91| 国产一区二区黑人欧美xxxx| 精品自拍视频在线观看| 欧美在线一级视频| 亚洲国内精品视频| 亚洲欧美在线x视频| 欧美精品videosex极品1| 午夜精品一区二区三区视频免费看| 日本三级韩国三级久久| 亚洲一级一级97网| 中文字幕欧美精品在线| 国产日韩欧美中文在线播放| 中文字幕亚洲精品| 欧美高清在线视频观看不卡| 久久成人精品视频| 中文在线不卡视频| 久久免费精品视频| 亚洲肉体裸体xxxx137| 性欧美在线看片a免费观看| 亚洲精品国偷自产在线99热| 日韩精品在线影院| 精品国产视频在线| 欧美性猛交xxxx久久久| 精品亚洲国产成av人片传媒| 高清亚洲成在人网站天堂| 韩国国内大量揄拍精品视频| 九九久久久久99精品| 97在线观看视频国产| 午夜精品99久久免费| 亚洲精品少妇网址| 成人在线一区二区| 久久精品91久久香蕉加勒比| 亚洲系列中文字幕| 亚洲第五色综合网| 国外视频精品毛片| 亚洲色图偷窥自拍| 欧美性少妇18aaaa视频| 国产视频久久久| 欧美极品少妇xxxxⅹ喷水| 亚洲精品久久久久久久久久久| 久久久999国产精品| 91av在线播放视频| 亚洲免费视频一区二区| 国产欧美一区二区三区视频| 欧美大片免费看| 久久6免费高清热精品| 国产亚洲精品美女| 好吊成人免视频| 中文字幕亚洲欧美日韩2019| 国产欧美日韩亚洲精品| 欧美成人精品在线视频| 国产a级全部精品| 欧美日韩国产综合视频在线观看中文| 91精品久久久久久久久久入口| 日韩免费av在线| 亚洲精品国产电影| 欧美在线视频免费| 亚洲精品女av网站| 51精品在线观看| 国产日韩精品在线观看| 国产精品亚洲综合天堂夜夜| 欧美成人免费观看| 日韩中文字幕在线播放| 黑人欧美xxxx| 亚洲淫片在线视频| 国产精品扒开腿做爽爽爽的视频| 欧美区在线播放| 91免费看国产| 亚洲精品成人网| 久久精品国产成人| 国产精品久久婷婷六月丁香| 亚洲免费视频在线观看| 久久久免费电影|