在asp.net的webform組件中的linkbutton組件也是一個服務器端的組件,這個組件有點類似于html中的<a>標識符。它的主要作用是就是在asp.net頁面中顯示一個超鏈接。當這個鏈接被按動的時候,頁面就會往服務器端傳遞信息,并且在服務器端來處理相應的事件。 
  一. linkbutton組件的重要的組成內容: 
  我們通過下面這張表來說明一下linkbutton組件的一些常用屬性、事件。 
linkbutton組件的常用屬性、事件 代表的意思 
text 這是一個屬性,就是linkbutton組件顯示的文字 
commandname,commandargument 這二個屬性在功能上基本相同,當click事件被觸發的時候,通過這二個屬性可以方便的往服務器端傳遞數據。對于這二個屬性的用法一些重要的用法,在下面有著重的介紹。 
onclick 這個事件是當組件被click的時候觸發 
oncommand 這也是一個事件,并和上面onclick事件類似,區別在于,這個事件在被觸發的時候,往服務器端傳遞commandname,commandargument屬性值。 
  二. 在asp.net頁面中利用commandname屬性和commandargument屬性: 
  你也許對linkbutton組件中commandname屬性和commandargument屬性有點迷惑,他們到底會有什么作用。其實他們有著非常重要的作用。舉例如下: 
  假如在你的一個頁面中有100個linkbutton,那么在服務器端要判斷到底是哪個linkbutton被按動了。如果沒有這二個屬性,可以通過給每一個linkbutton的text屬性賦值,然后通過檢測text屬性值,來判斷到底是哪個linkbutton被按動了。當然你也可以通過給每一個linkbutton命不同的名(當然你就是想命同樣的名,在asp.net中也是不可以的),然后在事件處理函數中,通過檢測sender屬性值來判斷哪個linkbutton被按動。雖然上述這些方法都是可行的,但無一不繁瑣。有了commandname屬性和commandargument屬性就可以方便的解決這些問題。在程序中給linkbutton的commandname屬性和commandargument屬性賦值,然后通過oncommand事件中,就可以得到從commandeventargs類中的數據,從而到判斷是哪個linkbutton被按動了。那么commandeventargs類有是干什么的?commandeventargs類存儲了和按鈕(button)事件相關的數據,并且可以在事件處理中通過commandeventargs類的屬性來訪問這些數據。說的明白些,就是當linkbutton被按動后,這個linkbutton所觸發的數據都被儲存到服務器的commandeventargs類中,訪問commandeventargs類中的屬性也就訪問了被按動的linkbutton了。這樣說,也許你還有點不清楚,下面通過一個程序例子來具體說明一下。 
  三. linkbutton組件的具體用法: 
  本文是通過一段和linkbutton組件相關的程序來說明,linkbutton組件如何通過oncommand( )事件來傳遞commandname屬性值和commandargument屬性值的。以及在程序中如何讀取commandeventargs類中的數據。 
下圖是此程序運行的界面: 
  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 > 請選擇日期:</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 > 
  四. 總結: 
  本文介紹linkbutton組件一些重要的組成內容,即一些重要的屬性和事件。并通過一個程序例子來具體說明他的使用方法。linkbutton組件的出現使得在asp.net頁面中傳遞參數越來越方便了。但此組件有一個缺憾,就是不能在不支持javascript語言的瀏覽器上面使用,這是因為他使用了javascript語言中submit( )方法來提交頁面的。
新聞熱點
疑難解答
圖片精選