這個題目超簡單的,大概市面上任何一本ASP.NET的入門書,看完前三章都要會寫吧?

 

只是有讀者問起,我剛好覺得他可以擺在本書的第三章(3-1節),所以補上。

      

 

這個習題的重點只有兩個:

    1.  後置程式碼中,會使用合適的 "事件"

    2.  知道怎麼把輸出的字串格式,修改成特殊格式(例如:貨幣格式)請參閱本書7-7節

 

===================================================================

Part (I) ---- HTML畫面設計,就不用講了,這實在太基本...... Orz

後置程式碼:

 

1     Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
2
3         Dim sum As Integer = CInt(TextBox1.Text) + CInt(TextBox2.Text) + CInt(TextBox3.Text)
4
5         Label1.Text = String.Format("{0:C}", sum)
6         '--轉換成貨幣格式
7
8     End Sub

 

 也可以寫成這樣   Label1.Text = String.Format("{0:NT$ #,### ; -NT$ #,###}", sum)

 

===================================================================

Part (II) ---- 這名讀者還希望「不用按下Button按鈕」就能執行程式。

這也很簡單,TextBox控制項也有 AutoPostBack屬性喔! (但要一個小技巧,設定步驟請看本書 3-2節的圖片說明)

執行結果如下:

       

 

後置程式碼,改寫在 TextBox的「_TextChanged()」事件裡面。

1     Protected Sub TextBox3_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged
2         Dim sum As Integer =  CInt(TextBox3.Text) + CInt(TextBox2.Text) + CInt(TextBox1.Text)
3
4         Label1.Text = String.Format("{0:C}", sum)
5         '--轉換成貨幣格式
6     End Sub

 

 

 講完了,很簡單

 這個範例雖然很淺,但拿來作補充也還不賴。

 反正我要出版範例集,這兩個範例跟TextBox收錄在一起也還OK

相關文章,但難度比這個高: [習題]ASP.NET製作網頁版的[小]計算機

 

上面的程式,只用了 Cint()強制轉換成整數,如果使用者輸入「非數字」,可能會出錯。

解決的方法,請看這篇文章: http://www.allenkuo.com/GenericArticle/view508.aspx 

除了簡單的驗證功能之外,這篇文章也告訴我們,重覆使用的程式碼,可以做成 Class,

讓程式更顯精簡、可讀性更高!

 


 

 

......  寄信給我    mis2000lab (at) 雅虎.com.台灣 ................................................................................................................
ASP.NET專題實務  (文魁出版,VB版 P8187 / C#版P09027

              下集已經出版囉~~~ASP.NET專題實務II:範例應用與4.0新功能

.............................................................................................................. 寄信給我    mis2000lab (at) 雅虎.com.台灣 ........