asp.net中dropdownlist控制元件例項操作
阿新 • • 發佈:2019-02-10
.aspx程式碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Sample 3-10 11.aspx.cs" Inherits="Sample_3_7" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <link href="StyleSheet.css" rel="stylesheet" type="text/css" /> </head> <body> <form id="form1" runat="server"> <div> <h2>DropDownList</h2> <div id="div_p1"> <p>選定某一項後,自動列出該項的index,text,value</p> <asp:DropDownList ID="ddl_1" runat="server" AutoPostBack="True" onselectedindexchanged="ddl_1_SelectedIndexChanged"> <asp:ListItem Value="first">選定第一項</asp:ListItem> <asp:ListItem Value="second">選定第二項</asp:ListItem> <asp:ListItem Value="third">選定第三項</asp:ListItem> </asp:DropDownList> <br /><br /> <span class="w250">獲取選定項的selectedIndex:</span><asp:TextBox ID="txt_index" runat="server"></asp:TextBox> <br /> <span class="w250">獲取選定項的selectedText:</span><asp:TextBox ID="txt_text" runat="server"></asp:TextBox> <br/> <span class="w250">獲取選定項的selectedValue:</span><asp:TextBox ID="txt_value" runat="server"></asp:TextBox> <br /> <span class="w250">獲取ddl中總共有多少個選項:</span><asp:TextBox ID="txt_ItemCount" runat="server"></asp:TextBox> <br /> <br/> <asp:Button ID="btn_clear" runat="server" Text="清除所有的項" onclick="btn_clear_Click" /> <asp:Button ID="btn_s3" runat="server" Text="自動選中第三項" onclick="btn_s3_Click" /> </div> <hr /> <div id="div_p2"> <p>讓DropdownList也可以作為導航:</p> <asp:DropDownList ID="ddl_nav" runat="server" DataSourceID="ADS_NAV" DataTextField="網站名稱" DataValueField="網址" > </asp:DropDownList> <asp:Button ID="Button1" runat="server" Text="go >" onclick="Button1_Click" /> <asp:AccessDataSource ID="ADS_NAV" runat="server" DataFile="~/DATA/51ZXW.mdb" SelectCommand="SELECT [網站名稱], [網址] FROM [TB_HLINKS]"></asp:AccessDataSource> <br /> <asp:Button ID="Button2" runat="server" Text="設定第三項的內容與網址,到google" onclick="Button2_Click" /> <br /> <asp:Button ID="Button3" runat="server" Text="給ddl_nav新增一個ListItem(物件)" onclick="Button3_Click" /> </div> </div> </form> </body> </html>
頁面佈局如下:
.aspx.cs程式碼如下:
瀏覽器中:using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Sample_3_7 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void ddl_1_SelectedIndexChanged(object sender, EventArgs e) { txt_index.Text = ddl_1.SelectedIndex.ToString(); //注意獲取text需要2個步驟:1 獲取選定的Item; 2 獲取Item的Text txt_text.Text = ddl_1.SelectedItem.Text; //也可以用更復雜的結構獲取text(僅作為邏輯教學) //txt_text.Text = ddl_1.Items[ddl_1.SelectedIndex].Text; txt_value.Text = ddl_1.SelectedValue; txt_ItemCount.Text = ddl_1.Items.Count.ToString(); } //重定向 protected void Button1_Click(object sender, EventArgs e) { string url = ddl_nav.SelectedValue; //請注意這個語句:重定向 Response.Redirect(url); } //清除所有項 protected void btn_clear_Click(object sender, EventArgs e) { ddl_1.Items.Clear(); } protected void btn_s3_Click(object sender, EventArgs e) { //在設定之前,先要清除原先的選項,否則報錯 ddl_1.SelectedItem.Selected = false; //注意第三項的下標是2: ddl_1.Items[2].Selected = true; //Response.Write(ddl_1.GetType().ToString()); } //手動修改一項google protected void Button2_Click(object sender, EventArgs e) { ddl_nav.Items[2].Text = "GOOGLE"; ddl_nav.Items[2].Value = "http://www.google.com.hk"; } //以面向物件的程式設計方式,給ddl_nav新增一個子項 protected void Button3_Click(object sender, EventArgs e) { ListItem obj_li; obj_li = new ListItem(); //例項化obj_li,然後才可以對其進行操作 obj_li.Text = "新浪"; obj_li.Value = "http://www.sina.com.cn"; //這句的形式非常重要:給某個物件 新增一個子物件 ddl_nav.Items.Add(obj_li); } }