ASP.NET LinkButton組件編程淺析
ASP.NET LinkButton組件編程是什么概念呢?首先讓我們來(lái)看看:
在ASP.NET的WebForm組件中的LinkButton組件也是一個(gè)服務(wù)器端的組件,這個(gè)組件有點(diǎn)類(lèi)似于HTML中的﹤A﹥標(biāo)識(shí)符。它的主要作用是就是在ASP.NET頁(yè)面中顯示一個(gè)超鏈接。當(dāng)這個(gè)鏈接被按動(dòng)的時(shí)候,頁(yè)面就會(huì)往服務(wù)器端傳遞信息,并且在服務(wù)器端來(lái)處理相應(yīng)的事件。
一.ASP.NET LinkButton組件的重要的組成內(nèi)容:
我們通過(guò)下面這張表來(lái)說(shuō)明一下LinkButton組件的一些常用屬性、事件。
LinkButton組件的常用屬性、事件 代表的意思
Text 這是一個(gè)屬性,就是LinkButton組件顯示的文字
CommandName,CommandArgument 這二個(gè)屬性在功能上基本相同,當(dāng)Click事件被觸發(fā)的時(shí)候,通過(guò)這二個(gè)屬性可以方便的往服務(wù)器端傳遞數(shù)據(jù)。對(duì)于這二個(gè)屬性的用法一些重要的用法,在下面有著重的介紹。
OnClick 這個(gè)事件是當(dāng)組件被Click的時(shí)候觸發(fā)
OnCommand 這也是一個(gè)事件,并和上面OnClick事件類(lèi)似,區(qū)別在于,這個(gè)事件在被觸發(fā)的時(shí)候,往服務(wù)器端傳遞CommandName,CommandArgument屬性值.
二.在ASP.NET頁(yè)面中利用CommandName屬性和CommandArgument屬性:
你也許對(duì)ASP.NET LinkButton組件中CommandName屬性和CommandArgument屬性有點(diǎn)迷惑,他們到底會(huì)有什么作用。其實(shí)他們有著非常重要的作用。舉例如下:
假如在你的一個(gè)頁(yè)面中有100個(gè)ASP.NET LinkButton,那么在服務(wù)器端要判斷到底是哪個(gè)LinkButton被按動(dòng)了。如果沒(méi)有這二個(gè)屬性,可以通過(guò)給每一個(gè)LinkButton的Text屬性賦值,然后通過(guò)檢測(cè)Text屬性值,來(lái)判斷到底是哪個(gè)LinkButton被按動(dòng)了。當(dāng)然你也可以通過(guò)給每一個(gè)LinkButton命不同的名(當(dāng)然你就是想命同樣的名,在ASP.NET中也是不可以的),然后在事件處理函數(shù)中,通過(guò)檢測(cè)Sender屬性值來(lái)判斷哪個(gè)LinkButton被按動(dòng)。雖然上述這些方法都是可行的,但無(wú)一不繁瑣。有了CommandName屬性和CommandArgument屬性就可以方便的解決這些問(wèn)題。
在程序中給LinkButton的CommandName屬性和CommandArgument屬性賦值,然后通過(guò)OnCommand事件中,就可以得到從CommandEventArgs類(lèi)中的數(shù)據(jù),從而到判斷是哪個(gè)ASP.NET LinkButton被按動(dòng)了。那么CommandEventArgs類(lèi)有是干什么的?CommandEventArgs類(lèi)存儲(chǔ)了和按鈕(Button)事件相關(guān)的數(shù)據(jù),并且可以在事件處理中通過(guò)CommandEventArgs類(lèi)的屬性來(lái)訪(fǎng)問(wèn)這些數(shù)據(jù)。說(shuō)的明白些,就是當(dāng)LinkButton被按動(dòng)后,這個(gè)LinkButton所觸發(fā)的數(shù)據(jù)都被儲(chǔ)存到服務(wù)器的CommandEventArgs類(lèi)中,訪(fǎng)問(wèn)CommandEventArgs類(lèi)中的屬性也就訪(fǎng)問(wèn)了被按動(dòng)的LinkButton了。這樣說(shuō),也許你還有點(diǎn)不清楚,下面通過(guò)一個(gè)程序例子來(lái)具體說(shuō)明一下。
三.ASP.NET LinkButton組件的具體用法:
本文是通過(guò)一段和LinkButton組件相關(guān)的程序來(lái)說(shuō)明,LinkButton組件如何通過(guò)OnCommand( )事件來(lái)傳遞CommandName屬性值和CommandArgument屬性值的。以及在程序中如何讀取CommandEventArgs類(lèi)中的數(shù)據(jù)。
下圖是此程序運(yùn)行的界面:
Link.aspx源程序代碼如下:
- ﹤% @ Page Language = "C#" Debug = "true" %﹥
 - ﹤html ﹥
 - ﹤head ﹥
 - ﹤title ﹥Link Button組件演示程序﹤/title ﹥
 - ﹤script runat = "server" ﹥
 - protected void LinkButton_Command ( object sender , CommandEventArgs e )
 - {
 - Message . Text = "你選擇的是: " + e . CommandArgument ;
 - }
 - ﹤/script ﹥
 - ﹤/head ﹥
 - ﹤body ﹥
 - ﹤form runat = "server" ﹥
 - ﹤table cellspacing = 0 cellpadding = 0 border = 1 ﹥
 - ﹤tr ﹥ ﹤td ﹥ 請(qǐng)選擇日期:﹤/td ﹥ ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期一" runat = "server" CommandArgument = "星期一" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期二" runat = "server" CommandArgument = "星期二" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期三" runat = "server" CommandArgument = "星期三" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期四" runat = "server" CommandArgument = "星期四" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期五" runat = "server" CommandArgument = "星期五" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期六" runat = "server" CommandArgument = "星期六" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤tr ﹥
 - ﹤td align = center ﹥
 - ﹤asp:LinkButton Text = "星期日" runat = "server" CommandArgument = "星期日" oncommand = "LinkButton_Command" /﹥
 - ﹤/td ﹥
 - ﹤/tr ﹥
 - ﹤/table ﹥
 - ﹤asp:Label id = "Message" runat = "server" /﹥
 - ﹤/form ﹥
 - ﹤/body ﹥
 - ﹤/html ﹥
 
四.ASP.NET LinkButton組件編程總結(jié):
本文介紹LinkButton組件一些重要的組成內(nèi)容,即一些重要的屬性和事件。并通過(guò)一個(gè)程序例子來(lái)具體說(shuō)明他的使用方法。LinkButton組件的出現(xiàn)使得在ASP.NET頁(yè)面中傳遞參數(shù)越來(lái)越方便了。但此組件有一個(gè)缺憾,就是不能在不支持javascript語(yǔ)言的瀏覽器上面使用,這是因?yàn)樗褂昧薺avascript語(yǔ)言中Submit( )方法來(lái)提交頁(yè)面的。
ASP.NET LinkButton組件編程的相關(guān)內(nèi)容就向你介紹到這里,希望對(duì)你學(xué)習(xí)ASP.NET LinkButton組件編程有所幫助。
【編輯推薦】















 
 
 
 
 
 
 