ASP.Net LinkButton組件編程是什麼概念呢?首先讓我們來看看:
在ASP.NET的WebForm組件中的LinkButton組件也是一個服務器端的組件,這個組件有點類似於Html中的﹤A﹥標識符。它的主要作用是就是在ASP.Net頁面中顯示一個超鏈接。當這個鏈接被按動的時候,頁面就會往服務器端傳遞信息,並且在服務器端來處理相應的事件。
一.ASP.Net LinkButton組件的重要的組成內容:
我們通過下面這張表來說明一下LinkButton組件的一些常用屬性、事件。
LinkButton組件的常用屬性、事件 代表的意思
Text 這是一個屬性,就是LinkButton組件顯示的文字
CommandName,CommandArgument 這二個屬性在功能上基本相同,當Click事件被觸發的時候,通過這二個屬性可以方便的往服務器端傳遞數據。對於這二個屬性的用法一些重要的用法,在下面有著重的介紹。
OnClick 這個事件是當組件被Click的時候觸發
OnCommand 這也是一個事件,並和上面OnClick事件類似,區別在於,這個事件在被觸發的時候,往服務器端傳遞CommandName,CommandArgument屬性值。
二.在ASP.Net頁面中利用CommandName屬性和CommandArgument屬性:
你也許對ASP.Net LinkButton組件中CommandName屬性和CommandArgument屬性有點迷惑,他們到底會有什麼作用。其實他們有著非常重要的作用。舉例如下:
假如在你的一個頁面中有100個ASP.NET LinkButton,那麼在服務器端要判斷到底是哪個LinkButton被按動了。如果沒有這二個屬性,可以通過給每一個LinkButton的Text屬性賦值,然後通過檢測Text屬性值,來判斷到底是哪個LinkButton被按動了。當然你也可以通過給每一個LinkButton命不同的名(當然你就是想命同樣的名,在ASP.Net中也是不可以的),然後在事件處理函數中,通過檢測Sender屬性值來判斷哪個LinkButton被按動。雖然上述這些方法都是可行的,但無一不繁瑣。有了CommandName屬性和CommandArgument屬性就可以方便的解決這些問題。
在程序中給LinkButton的CommandName屬性和CommandArgument屬性賦值,然後通過OnCommand事件中,就可以得到從CommandEventArgs類中的數據,從而到判斷是哪個ASP.Net LinkButton被按動了。那麼CommandEventArgs類有是干什麼的?CommandEventArgs類存儲了和按鈕(Button)事件相關的數據,並且可以在事件處理中通過CommandEventArgs類的屬性來訪問這些數據。說的明白些,就是當LinkButton被按動後,這個LinkButton所觸發的數據都被儲存到服務器的CommandEventArgs類中,訪問CommandEventArgs類中的屬性也就訪問了被按動的LinkButton了。這樣說,也許你還有點不清楚,下面通過一個程序例子來具體說明一下。
三.ASP.Net 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 = "星期三&qu
ot; 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組件編程總結:
本文介紹LinkButton組件一些重要的組成內容,即一些重要的屬性和事件。並通過一個程序例子來具體說明他的使用方法。LinkButton組件的出現使得在ASP.Net頁面中傳遞參數越來越方便了。
但此組件有一個缺憾,就是不能在不支持Javascript語言的浏覽器上面使用,這是因為他使用了Javascript語言中Submit( )方法來提交頁面的。
ASP.NET LinkButton組件編程的相關內容就向你介紹到這裡,希望對你學習ASP.Net LinkButton組件編程有所幫助。