Ch06 建立WEB表單 網頁程式設計.

Slides:



Advertisements
Similar presentations
計算機程式及實習 Computer Program Design and Experiment) 期末報告 ppt 南台科技大學機械工程系 姓名 : 蔡中銘 學號 :4A 授課老師 : 謝慶存大帥哥.
Advertisements

Introduction to ASP.NET
計算機程式及實習 期末報告 題目:商店結帳系統
ooxx這個遊戲程式,非常的簡單只要你小時候會玩井字遊戲即可把電腦打敗,可以說是一種考智力取勝的遊戲。
Task #3 使用ASP.NET服务器控件创建页面.
第八章 DataGrid 與 DataTable 瀏覽器 DataTable DataGrid 存取 顯示表格 暑資碩三 房玄博 報告.
ASP.NET 網頁製作教本 – 從基本語法學起
第13章 FTP檔案上傳、 自動傳送 報告人 M9153314 李育旻.
課程名稱:程式設計 授課老師:________
《ASP.NET数据库网站设计教程(C#版)》
第6章 HTML控件和Web服务器控件 本章讲述的主要内容 6.1 ASP.NET控件概述 6.2 标准服务器端控件 6.3 数据验证控件
《计算机网络技术》 asp.net 程序设计 文本类控件 笪静.
5.1 – 表格(FORM) 輸入元素 : 兩種傳遞方法 : GET or POST 範例 1. 文字欄位 Text box
Chapter 7 網頁應用程式與狀態管理.
題目:台灣客運 南臺科技大學 機械工程系 班級:奈米一乙 學號:4A 姓名:蔡政堯 授課教師:謝慶存
Ch03 VB.NET語法建立ASP.NET 網頁程式設計.
《ASP.NET数据库网站设计教程(C#版)》
第12章 建立網站的巡覽架構.
ASP.NET 3.5 Ch5 進階伺服器控制項.
第3章 超文本标记语言(HTML) 3.1 基本结构标记 3.2 文本格式标记 3.3 超链接标记<A></A>
Web Part與 個人化網頁製作 資策會教育訓練處 王寧疆 MCAD.NET/MCSD.NET/MCT
第 4 章 資料輸入表單與 Request物件 製作.
Chapter 4 基本伺服器控制項.
動態網頁程式 設計實習 1042 數位教材 單元 9:ASP.NET物件及表單
課程名稱:程式設計 授課老師:________
ASP.NET 網頁製作教本 – 從基本語法學起
Chapter 5 進階伺服器控制項.
表單處理及URL參數傳遞.
CH11.
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
Ch07 表單欄位驗證控制項 網頁程式設計.
Ch11 檔案上傳及電子郵件 WEB程式設計.
ASP.NET 網頁製作教本 – 從基本語法學起
在 Web 应用中,导航是非常重要的。ASP
程式語言 -Visual Basic 變數、常數與資料型態.
客戶端的檔案上傳 HtmlInputFile檔案控制項 上傳單一檔案 同時上傳多個檔案.
ASP.NET 網頁製作教本 – 從基本語法學起
Google Data API Spreadsheet
Controls.
ASP.NET 網頁製作教本 – 從基本語法學起
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
WEB伺服器控制項.
第5章 Web表單程式設計模型 5-1 Web表單程式設計模型 5-2 ASP.NET的Page物件
第9章 視窗應用程式的事件處理 9-1 事件的基礎 9-2 表單事件 9-3 滑鼠事件 9-4 鍵盤事件 9-5 表單的鍵盤事件
網頁切換移轉 JS vs. ASP.NET.
ASP.NET 網頁製作教本 – 從基本語法學起
Ch10 網頁間的資料分享: Application Session 與Cookies的處理
第4章 視窗應用程式的基本輸出入.
課程名稱:_____________ 指導教授:_____________
第3章 ASP.NET程序设计基础 3.
網頁切換移轉 JS vs. ASP.NET.
表單(Form).
題目:南台飲料店結帳系統 南台科技大學 機械工程系 車輛一甲 學號:4A
VS.NET 2003 IDE.
網頁程式設計 本章投影片錄自HTML5、CSS3、RWD、jQuery Mobile跨裝網頁設計 陳惠貞 著 碁峰資訊股份有限公司出版
第10章 Web應用程式的資料分享 10-1 Web應用程式的基礎 10-2 設定ASP.NET的Web應用程式 10-3 網頁間的資料分享
第18章 個人入口網站的建立 18-1入口網站的基礎 18-2 建立網站的搜尋引擎 18-3 網頁組件的個人化功能
Ch09 在網頁之間傳遞資訊 網頁程式設計.
表單(Form).
計算機程式及實習 Computer Program Design and Experiment) 期末報告ppt製作 南台科技大學 機械工程系 題目:南台電影城結帳系統 班級 : 車輛一甲 學號 : 4A 授教學生: 阮偉倫 授課老師: 謝慶存.
表格(HTML – FORM).
C# 基本語法、變數.
1 Session对象的特性 Session 状态对象 Session 对象常用的方法有: Session 对象常用的属性有:
第4章 ASP.NET服务器控件.
期末考.
Controls.
向导控件的样式 当创建了一个向导控件时,系统会自动生成向导控件的 HTML 代码,示例代码如下所示。
表格(HTML – FORM)
進階UI元件:ListView元件以及複選 靜宜大學資管系 楊子青
表单页面 表单是用户利用浏览器对Web站点网络数据库进行查询的一种界面,用户利用表单可以输入信息或选择选项等,然后将这些信息提交给服务器进行处理。通过表单,既可以将浏览器的信息发送到Internet服务器上,同时表单也可以使用户与站点的浏览者交互或从浏览者那里收集信息。它是网页的设计者和使用者相互交流的工具。表单对象包括文本域(单行、多行、密码)、列表、菜单、复选框、单选框、按钮等。
Presentation transcript:

Ch06 建立WEB表單 網頁程式設計

大綱 本章內容包含課本6-1, 6-2及第7章 Web表單 Web控制項的基礎 資料輸入輸出控制項 選擇控制項 清單控制項 按鈕控制項

網頁表單的用途 ASP.NET程式是伺服端網頁技術,換句話說,客戶端網頁只負責取得使用者輸入的資料,資料都是送到伺服端來進行處理。網頁表單就是ASP.NET程式的資料輸入介面,如同Windows對話方塊,它是使用者與後端程式的溝通橋樑,如下圖所示:

伺服端控制項的Web表單處理 ASP.NET的Web表單是結合HTML/XHTML、程式碼和伺服端控制項,一種完全在Web伺服器執行的表單,如下圖所示:

Web表單的程式架構-說明 ASP.NET的Web表單可以建立跨平台和跨瀏覽程式Web應用程式的輸入介面,其使用的技術如同在VB、JBuilder等視覺化開發工具建立Windows應用程式的「GUI」(Graphics UserInterface)介面。 Web表單程式架構是一種事件驅動程式設計模型(Event-driven Programming Model),它是使用伺服端控制項建立Web表單的使用介面。當產生事件時,ASP.NET程式以對應的事件處理程序來處理事件。

Web表單的程式架構-架構1 <%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Protected Sub Button1_Click(ByVal sender As _ Object, ByVal e As System.EventArgs) Label1.Text = "按下Button控制項<br/>" End Sub </script>

Web表單的程式架構-架構2 <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>未命名頁面</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div> </form> </body> </html>

Web表單的程式架構-架構說明 第一部分:<script>標籤的事件處理程序或函數,以此例是Button1_Click()事件處理程序。 第二部分:<form Runat="server">標籤建立Web表單,內含Form表單標籤和伺服端控制項(Server Controls),以此例擁有Label和Button控制項。

Head標頭標籤 在ASP.NET 2.0版的<head>標籤,可以改為<head Runat="server">的HtmlHead控制項物件,如下所示: <head Runat="server"> …… </head> 上述Head標頭標籤可以建立HtmlHead物件。ASP.NET程式可以指定HtmlTitle物件的標題文字(即<title>標籤),如下所示: Sub Page_Load(Sender As Object, _ E As Eventargs) Page.Header.Title = "Ch6-2-1.aspx" End Sub

Form表單標籤-說明 Web表單的伺服端控制項是置於<form Runat="server">的HTML控制項之間,它就是HtmlForm控制項物件,如下所示: <form Runat="server"> ……… </form> 上述Web表單和HTML/XHTML表單差異只在Runat屬性,此屬性將HTML/XHTML表單轉換成ASP.NET的Web表單。

Form表單標籤-屬性 Id屬性:Web表單的識別名稱。 Method屬性:控制項值的送出方式,值只能是post或get,其預設是post方法。 Action屬性:指定Web表單處理的ASP.NET程式,預設是自已,如果是其他ASP.NET程式,其值是程式的URL網址。

伺服端控制項-說明 Web表單是由伺服端控制項(Server Controls)組成,它是一種伺服端可程式化物件。 ASP.NET程式可以使用HTML或Web控制項來建立表單使用介面。

伺服端控制項-HTML控制項(說明) HTML控制項是.NET Framework物件,這些控制項都擁有對應的HTML/XHTML標籤,如下所示: <input type="TEXT" Id="Name" size ="20" Runat="server"> 上述標籤和HTML/XHTML標籤並沒有什麼不同,其差異只在新增Runat和Id兩個屬性。

伺服端控制項-HTML控制項(種類)

伺服端控制項-Web控制項(說明) Web控制項是一組和HTML/XHTML標籤完全無關的控制項,其語法是使用XML標籤寫法,如下所示: <asp:TextBox Id="name" Width="200px" Runat="server"/> 上述Web控制項是使用asp字頭的XML標籤,在「:」符號後是控制項種類,以此例是TextBox控制項,Id屬性為控制項名稱,同樣需要Runat屬性值server,指明是位在伺服端處理。

伺服端控制項-Web控制項(種類)

Page物件與控制項的事件-說明 當在瀏覽程式載入ASP.NET程式,或使用者在Web表單按下或選擇控制項等操作時,就會造成控制項的狀態改變,進而觸發事件;當事件產生時,可以建立事件處理程序來處理此事件。

Page物件與控制項的事件-控制項事件 在Web表單的伺服端控制項都提供有相關事件。例如:按一下Button控制項button1時,就會觸發Click事件,其事件處理程序,如下所示: Protected Sub Button1_Click(ByVal sender As _ Object, ByVal e As System.EventArgs) Label1.Text = "按下Button控制項<br/>" End Sub

Page物件與控制項的事件-Page物件的事件 當伺服端執行和編譯ASP.NET程式,每一頁ASP.NET程式的網頁就是一個Page物件,它會觸發一系列Page物件的事件。Page物件的常用事件,如下表所示:

Web控制項的基礎-說明 Web控制項是一組比HTML控制項功能更強大的控制項,不僅可以建立Web表單,它還包括資料顯示的相關控制項,其語法是使用XML標籤的寫法,如下所示: <asp:TextBox id="name" Width="200px" runat="Server"/> Web控制項使用asp字頭的XML標籤,「:」符號後是控制項種類,以此例是TextBox控制項,id屬性為控制項名稱,同樣需要runat屬性值Server,指明是位在伺服端處理。

HTML控制項與WEB控制項的對照 HTML控制項 WEB <input type=“TEXT” id=“Name” runat=“Server”> WEB <asp:TextBox id=“Name” runat=“Server”/>

Web控制項的基礎-種類

Web控制項的基礎-屬性

Label標籤控制項-說明 Label標籤控制項的目的是在網頁顯示文字內容,它會轉換成HTML的<span>標籤,一個Label標籤控制項的範例,如下所示: <asp:Label id="Name" Width="200px" BorderStyle="solid" BorderColor="#ccccff" runat="Server"/>

Label標籤控制項-屬性

範例1 <!-- 程式範例:Ch06_01.aspx --> <%@ Page Language="VB" %> <html> <head> <title>Label標籤控制項</title> <script language="VB" runat="Server"> Sub Page_Load(Sender As Object, e As Eventargs) Name.Text = "ASP.NET網頁設計範例教本" End Sub </script> </head> <body> <h2>Label標籤控制項</h2> <hr> <asp:Label id="Name" Width="200px" BorderStyle="solid" BorderColor="#ccccff" runat="Server"/> </body> </html>

資料輸入控制項-建立 Web資料輸入控制項就是TextBox控制項,相當於HTML/XHTML表單標籤或控制項的文字方塊、密碼欄位和文字區域。 在VWD設計檢視建立的Web表單,如下圖所示:

資料輸入控制項-標籤 TextBox控制項標籤,如下所示: <asp:TextBox Id="name" Width="200px" Runat="server"/><br/> <asp:TextBox Id="pass" Width="200px" TextMode="Password" Runat="server"/><br/> <asp:TextBox Id="address" Width="200px" TextMode="Multiline" Rows="3" Runat="server"/> 上述標籤建立3個TextBox控制項,TextMode屬性指定欄位種類為密碼欄位(Password)或文字區域(Multiline)。

資料輸入控制項-標籤屬性

資料輸入控制項-存取欄位值 在ASP.NET程式取得TextBox控制項的欄位值,就是使用Text屬性,如下所示: name.Text pass.Text address.Text

範例2 <form runat="Server"> 姓名: <asp:TextBox id="name" Width="200px" runat="Server"/><br/> 密碼: <asp:TextBox id="pass" Width="200px" TextMode="Password" runat="Server"/><br/> 地址: <asp:TextBox id="address" Width="200px" TextMode="Multiline" Rows="3" runat="Server"/> <asp:Button id="Button" Text="送出" OnClick="button_Click" Runat="Server"/> </form> <asp:Label id=“msg" ForeColor=“red” runat="Server"/> <script language="VB" runat="Server"> Sub button_Click(Sender As Object, e As Eventargs) ' 顯示欄位值 msg.Text = "姓名: " & name.Text & “<br/>” msg.Text &= "密碼: " & pass.Text & “<br/>” msg.Text &= "地址: " & address.Text & “<br/>” End Sub

練習1 修改範例2的程式,使得按下〔送出〕的按鈕時,會判斷輸入密碼是不是123 ,不對時,會出現錯誤訊息 Ex06_01.aspx

Web表單的顯示狀態-說明 ASP.NET的「顯示狀態」(ViewState)可以保留伺服端控制項的狀態,也就是每次執行HTTP請求時,保留使用者輸入的值。 例如:在Web表單TextBox控制項輸入值,不論表單送回多少次,除非更改控制項的值,顯示狀態都能夠自動保留欄位值。

Web表單的顯示狀態 ASP.NET顯示狀態是使用隱藏欄位儲存狀態資料,如下圖所示:

Web表單的顯示狀態 請在瀏覽程式執行「檢視」→「原始檔」指令檢視原始程式碼,可以在表單標籤<form>看到<input type="hidden">標籤的隱藏欄位,如下圖所示:

CheckBox核取方塊控制項-建立 CheckBox核取方塊控制項是一個複選題,可以建立一組切換開關。在VWD設計檢視建立的Web表單,從左至右依序是3個CheckBox控制項,可以用來勾選多個選項,預設勾選使用電話,如下圖所示:

CheckBox核取方塊控制項-標籤 CheckBox控制項標籤,如下所示: <asp:CheckBox Id="Tel" Text="使用電話" Checked="True" Runat="server"/> <asp:CheckBox Id="Email" Text="使用電子郵件" Runat="server"/> <asp:CheckBox Id="Fax" Text="使用傳真" 上述標籤建立名為Tel、Email和Fax的3個CheckBox控制項。

CheckBox核取方塊控制項-標籤屬性

CheckBox核取方塊控制項-存取欄位值 在ASP.NET程式是使用If條件敘述來檢查Checked屬性,以便知道是否有勾選核取方塊,如下所示: If Tel.Checked Then str &= "使用電話來確認<br/>" End If

範例3 Sub Page_Load(Sender As Object, e As Eventargs) Tel.Checked = True End Sub Sub button_Click(Sender As Object, e As Eventargs) Dim str As String = "確認方式: " If Tel.Checked Then str &= "使用電話來確認<br>" End If If Email.Checked Then str &= "使用電子郵件來確認<br>" If Fax.Checked Then str &= "使用傳真來確認<br>" msg.Text = str <form runat="Server"> <b>訂單確認的方式</b><br> <asp:CheckBox id="Tel" Text="使用電話" runat="Server"/> <asp:CheckBox id="Email" Text="使用電子郵件" runat="Server"/> <asp:CheckBox id="Fax" Text="使用傳真" runat="Server"/><br/> <asp:button id="Button" Text="送出" OnClick="button_Click" runat="Server"/><br/> </form> <asp:Label id=“msg" font-size="10pt" ForeColor=“red” runat="Server"/>

RadioButton選擇鈕控制項-建立 RadioButton選擇鈕控制項是一個單選題,提供一組選項,只能選擇其中之一。在VWD設計檢視建立的Web表單,從左至右依序是3個RadioButton控制項,這是一組選項,可以用來選擇付款方式,預選信用卡,如下圖所示:

RadioButton選擇鈕控制項-標籤 <asp:RadioButton Id="Card" Text="信用卡“ Checked="True" GroupName="Payment“ Runat="server"/> <asp:RadioButton Id="Tele" Text="劃撥" GroupName="Payment“ Runat="server"/> <asp:RadioButton Id="Cash" Text="到貨付款" GroupName="Payment" Runat="server"/> 上述標籤的GroupName屬性值都是Payment,表示是一組RadioButton控制項。

RadioButton選擇鈕控制項-存取欄位值 在ASP.NET程式是使用If ElseIf多條件敘述來檢查Checked屬性,以便知道使用者是否選取指定選擇鈕,如下所示: If Card.Checked Then msg.Text = Card.Text & "<br/>" Else If Tele.Checked Then msg.Text = Tele.Text & "<br/>" Else If Cash.Checked Then msg.Text = Cash.Text & "<br/>" End If

範例4 Sub Page_Load(Sender As Object, e As Eventargs) Card.Checked = True End Sub Sub button_Click(Sender As Object, e As Eventargs) If Card.Checked Then msg.Text = Card.Text & "<br/>" Else If Tele.Checked Then msg.Text = Tele.Text & "<br/>" Else If Cash.Checked Then msg.Text = Cash.Text & "<br/>" End If <form runat="Server"> <b>訂單的付款方式</b><br/> <asp:RadioButton id="Card" Text="信用卡" Checked="True" GroupName="Payment" runat="server"/> <asp:RadioButton id="Tele" Text="劃撥" GroupName="Payment" runat="server"/> <asp:RadioButton id="Cash" Text="到貨付款" GroupName="Payment" runat="server"/><br> <asp:button id="Button" Text="送出" OnClick="button_Click" runat="Server"/><br/> </form> <asp:Label id=“msg" font-bold="true" foreColor=“red” runat="Server"/>

清單控制項 DropDownList下拉式選單控制項 ListBox清單方塊控制項 CheckBoxList核取方塊清單控制項 RadioButtonList選擇鈕清單控制項

清單控制項-屬性 Web控制項有四種清單選擇功能的控制項:DropDownList、ListBox、CheckBoxList和RadioButtonList控制項。控制項都支援的屬性,如下表所示:

清單控制項-在VWD新增清單的ListItem控制項1 在VWD的【設計】標籤新增DropDownList、ListBox、CheckBoxList和RadioButtonList控制項後,都是顯示未繫結和沒有選項的控制項,即沒有項目ListItem控制項,如下圖所示:

清單控制項-在VWD新增清單的ListItem控制項2 請選取清單控制項,按一下上方箭頭圖示顯示「DropDownList工作」功能表,然後請按一下【編輯項目】超連結來新增ListItem控制項的項目,可以看到「ListItem集合編輯器」視窗。

清單控制項-在VWD新增清單的ListItem控制項3 請重複按【加入】鈕,即可新增清單所需的ListItem控制項,一個選項是一個ListItem控制項。其相關屬性說明,如下表所示:

DropDownList下拉式選單控制項-建立 DropDownList下拉式選單控制項是一個單選題,相當於單選HTML/XHTML標籤<select>的下拉式選單。在VWD設計檢視建立的Web表單,如下圖所示:

DropDownList下拉式選單控制項-屬性 ListItem控制項相關屬性,如下表所示:

DropDownList下拉式選單控制項-標籤 <asp:DropDownList Id="Shipment" Width="100px" Runat="server"> <asp:ListItem Text="郵寄" Value="Mail"/> <asp:ListItem Text="快遞" Value="UPS"/> <asp:ListItem Text="自取" Value="Self"/> </asp:DropDownList> 上述標籤建立DropDownList控制項,ListItem控制項建立每一個選項。

DropDownList下拉式選單控制項-使用 在DropDownList控制項可以檢查SelectedIndex屬性值是否為-1,以確定使用者是否選取,如下: If Shipment.SelectedIndex > - 1 Then ……… End If 如果使用者已經選取,接著使用SelectedItem屬性取得ListItem物件,以Text和Value屬性取得選項名稱和值,如下所示: Shipment.SelectedItem.Text Shipment.SelectedItem.Value

範例5 Sub button_Click(Sender As Object, e As Eventargs) If Shipment.SelectedIndex > - 1 Then show.Text = Shipment.SelectedItem.Text & _ Shipment.SelectedItem.Value End If End Sub <form runat="Server"> <b>訂單的寄送方式</b><br> <asp:DropDownList id="Shipment" Width="100px" runat="Server"> <asp:ListItem Text="郵寄" Value="Mail"/> <asp:ListItem Text="快遞" Value="UPS"/> <asp:ListItem Text="自取" Value="Self"/> </asp:DropDownList> <asp:button id="Button" Text="送出" OnClick="button_Click" runat="Server"/> </form> <asp:Label id="show" font-bold="true" runat="Server"/><br>

ListBox清單方塊控制項-建立 ListBox清單方塊控制項可以是單選或複選題,其顯示方式如同複選HTML/XHTML標籤<select>的清單方塊。在VWD設計檢視建立的Web表單,如下圖所示:

ListBox清單方塊控制項-屬性

ListBox清單方塊控制項-說明 ListBox清單方塊控制項可以設定成單選或複選,顯示方式如同複選的HtmlSelect控制項,如下: <asp:ListBox id="Gifts" SelectionMode="Multiple" runat="Server"> <asp:ListItem Text="滑鼠" Value="1" Selected="True"/> <asp:ListItem Text="鍵盤" Value="2"/> <asp:ListItem Text="喇叭" Value="3"/> <asp:ListItem Text="麥克風" Value="4"/> </asp:ListBox> 標籤建立名為Gifts的ListBox控制項,因為SelectionMode屬性值是Multiple,所以為多選。

ListBox清單方塊控制項-使用 如果是單選的ListBox控制項,其取得選取選項的方式和DropDownList控制項相同。複選需要使用For Next迴圈取得選取的選項,如下: For i = 0 to Gifts.Items.Count-1 If Gifts.Items(i).Selected Then str = str & Gifts.Items(i).Text & "<br>" End If Next i Items屬性取得所有選項的集合物件,Count屬性取得選項數,Gifts.Items(i).Selected檢查選項是否選取,Text或Value屬性取得選項名稱和值。

範例6 Sub button_Click(Sender As Object, e As Eventargs) Dim str As String = "" Dim i As Integer ' 取得所有的選項 For i = 0 to Gifts.Items.Count-1 If Gifts.Items(i).Selected Then str = str & Gifts.Items(i).Text & "<br/>" End If Next i msg.Text = str End Sub <form runat="Server"> <b>選擇免費的禮物(多選)</b><br/> <asp:ListBox id="Gifts" SelectionMode="Multiple" runat="Server"> <asp:ListItem Text="滑鼠" Value="1" Selected="True"/> <asp:ListItem Text="鍵盤" Value="2"/> <asp:ListItem Text="喇叭" Value="3"/> <asp:ListItem Text="麥克風" Value="4"/> </asp:ListBox> <asp:button id="Button" Text="送出" OnClick="button_Click" runat="Server"/> </form> <asp:Label id=“msg" font-bold="true" runat="Server"/><br/>

CheckBoxList核取方塊清單控制項-建立 CheckBoxList核取方塊清單控制項是一組CheckBox控制項,它是複選的控制項,簡單的說,就是建立一個隱藏面版來編排CheckBox控制項。在VWD設計檢視建立的Web表單,如下圖所示:

CheckBoxList核取方塊清單控制項-標籤屬性

CheckBoxList核取方塊清單控制項-說明 CheckBoxList核取方塊清單控制項是一組CheckBox控制項,這是一個複選的控制項,提供屬性能夠輕鬆編排多個CheckBox控制項,如下所示: <asp:CheckBoxList id="Gifts" RepeatDirection="Horizontal" runat="Server"> <asp:ListItem Text="滑鼠" Value="1" Selected="True"/> <asp:ListItem Text="鍵盤" Value="2"/> <asp:ListItem Text="喇叭" Value="3"/> <asp:ListItem Text="麥克風" Value="4"/> </asp:CheckBoxList>

範例7 Sub button_Click(Sender As Object, e As Eventargs) Dim str As String = "" Dim i As Integer ' 取得所有的選項 For i = 0 to Gifts.Items.Count-1 If Gifts.Items(i).Selected Then str = str & Gifts.Items(i).Text & _ "(" & Gifts.Items(i).Value & ")<br/>" End If Next i msg.Text = str End Sub <form runat="Server"> <b>選擇免費的禮物(多選)</b><br/> <asp:CheckBoxList id="Gifts" RepeatDirection="Horizontal" runat="Server"> <asp:ListItem Text="滑鼠" Value="1" Selected="True"/> <asp:ListItem Text="鍵盤" Value="2"/> <asp:ListItem Text="喇叭" Value="3"/> <asp:ListItem Text="麥克風" Value="4"/> </asp:CheckBoxList> <asp:button id="Button" Text="送出" OnClick="button_Click" runat="Server"/> </form> <asp:Label id=“msg" font-bold="true" runat="Server"/><br/>

RadioButtonList選擇鈕清單控制項-建立 RadioButtonList選擇鈕清單控制項是一組RadioButton控制項,屬於單選控制項,簡單的說,它就是提供面版來編排多個RadioButton控制項。在VWD設計檢視建立的Web表單,如下圖所示:

RadioButtonList選擇鈕清單控制項-標籤 RadioButtonList控制項是一組RadioButton控制項,可以選擇付款方式,其控制項標籤如下所示: <asp:RadioButtonList Id="Payment" RepeatDirection="Horizontal" Runat="server"> <asp:ListItem Text="信用卡" Value="1" Selected="True"/> <asp:ListItem Text="劃撥" Value="2"/> <asp:ListItem Text="喇叭" Value="3"/> <asp:ListItem Text="到貨付款" Value="4"/> </asp:RadioButtonList>

範例8 Sub button_Click(Sender As Object, e As Eventargs) If Payment.SelectedIndex > - 1 Then show.Text = Payment.SelectedItem.Text & _ "(" & Payment.SelectedItem.Value & ")" End If End Sub <form runat="Server"> <b>訂單的付款方式</b><br> <asp:RadioButtonList id="Payment" RepeatDirection="Horizontal" runat="Server"> <asp:ListItem Text="信用卡" Value="1" Selected="True"/> <asp:ListItem Text="劃撥" Value="2"/> <asp:ListItem Text="喇叭" Value="3"/> <asp:ListItem Text="到貨付款" Value="4"/> </asp:RadioButtonList> <asp:button id="Button" Text="送出" OnClick="button_Click" runat="Server"/> </form> <asp:Label id="show" font-bold="true" runat="Server"/><br>

Button按鈕控制項-說明 Button按鈕控制項的功能如同HtmlButton和HtmlInputButton控制項,如下所示: <asp:Button id="Button" Text="送出" OnClick="button_Click" runat="Server"/>

Button按鈕控制項-屬性與事件

LinkButton超連結按鈕控制項 LinkButton超連結按鈕控制項的功能如同Button控制項,只是顯示的外觀是超連結文字,如下所示: <asp:LinkButton id="Button" Text="送出" OnClick="button_Click" runat="Server"/> 標籤建立名為Button1的LinkButton控制項,其相關屬性與事件和Button控制項相同。

範例9, 09_01 Sub button_Click(Sender As Object, e As Eventargs) show.Text = "姓名: " & name.Text & "/" & Button.Text End Sub <form runat="Server"> 姓名: <asp:TextBox id="name" Width="200px" runat="Server"/><br> <asp:LinkButton id="Button" Text="送出" OnClick="button_Click" runat="Server"/> </form> <asp:Label id="show" Width="200px" runat="Server"/>

ImageButton圖片按鈕控制項-說明 ImageButton圖片按鈕控制項的功能也是Button控制項,只是以圖片顯示按鈕,如下所示: <asp:ImageButton id="Button" ImageUrl="sample.jpg" OnClick="button2_Click" runat="Server"/> 標籤建立名為Button的ImageButton控制項,其相關屬性與事件和Button控制項相似,只是沒有Text屬性。

ImageButton圖片按鈕控制項-屬性

範例10 Sub button_Click(Sender As Object, e As ImageClickEventArgs) show.Text = "姓名: " & name.Text & "/" & Button.AlternateText End Sub <form runat="Server"> 姓名: <asp:TextBox id="name" Width="200px" runat="Server"/><br> <asp:ImageButton id="Button" ImageUrl="sample.jpg" AlternateText="按一下" OnClick="button_Click" runat="Server"/> </form> <asp:Label id="show" Width="200px" runat="Server"/>

練習2:使用WEB控制項 設計一個會員資料表類似右圖: 將個人資料內容取得後,做一些判斷後輸出 例: 依輸入的性別,判斷是先生或女士 生日判斷可以判斷出星座

練習3:使用WEB控制項 設計圖片或影像按鈕 使用者可以按下圖片來選購

Web表單送回功能 Page物件的IsPostBack屬性 控制項的AutoPostBack屬性

Web表單送回功能 Web表單送回功能可以讓使用者在控制項輸入或選取的資料,送回伺服端來處理,預設送給ASP.NET程式本身,其相關屬性說明如下所示: Page物件的IsPostBack屬性:檢查是否是第1次載入ASP.NET程式,或是已經在客戶端執行過送回。 伺服端控制項的AutoPostBack屬性:當控制項指定AutoPostBack屬性為True,表示當控制項資料變更時,就自動執行表單送回。

Page物件的IsPostBack屬性 在Page_Load()事件處理程序,可以使用Page物件的IsPostBack屬性檢查是否是表單送回,如下所示: If Page.IsPostBack Then If name.Text <> "" Then msg.Text = name.Text & "歡迎進入網頁!" End If Else name.Text = "江小魚" lblName.Text = "使用者名稱: "

控制項的AutoPostBack屬性-說明 Web控制項如果擁有AutoPostBack屬性,可以配合事件處理程序來自動送回控制項內容的變更,如下所示: <asp:DropDownList Id="Username" Width="100px" Runat="server" AutoPostBack="True" OnSelectedIndexChanged="Change_Name"> <asp:ListItem Text="陳會安" Value="001"/> <asp:ListItem Text="江小魚" Value="002"/> <asp:ListItem Text="陳大安" Value="003"/> </asp:DropDownList> 上述控制項的AutoPostBack屬性為True,表示當更改選項資料時,不用等到按【送出】鈕,就馬上自動送回。

控制項的AutoPostBack屬性-說明 Web控制項支援AutoPostBack屬性和其觸發事件,如下表所示: