DropDownList控件

 

 

主要介绍:自定义数据、绑定数据库数据 

 

DropDownList控件的使用跟CheckBoxList控件的使用差不多。

首先是前台代码(Default.aspx):

1 <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack ="true">

2     <asp:ListItem>苹果</asp:ListItem>

3     <asp:ListItem>香蕉</asp:ListItem>

4     <asp:ListItem>橘子</asp:ListItem>

5     <asp:ListItem>桃子</asp:ListItem>

6 </asp:DropDownList>

7 <asp:Button ID="Button1" runat="server" Text="Button" OnClick ="Button1_Click"/>

8 <asp:Label ID="Label1" runat="server" Text=""></asp:Label>

 

然后是后台代码(Default.aspx.cs):

 1 /// <summary>

 2 /// Button1按钮的点击事件

 3 /// </summary>

 4 /// <param name="sender"></param>

 5 /// <param name="e"></param>

 6 protected void Button1_Click(object sender, EventArgs e)

 7 {

 8     string s = string.Empty;

 9 

10     //SelectedItem:获取列表控件中索引最小的选定项。即是取的选中的值。

11     s = this.DropDownList1.SelectedItem.Text;

12 

13     this.Label1.Text = "您选中的水果是:" + s;

14 }

 

最终运行效果:

DropDownList控件

 

上面是自定义的数据,也就是写在代码之中的数据。

 

 

----------------------------------------------------------------------

 

 

下面介绍的是,存储在数据库中的数据:

一:

首先,先在数据库中建立一张表:

1  CREATE TABLE KK

2  (

3      id INT,

4      [name] VARCHAR(20),

5  )

 

然后插入数据:

1  INSERT INTO KK (id, [name]) VALUES (1, '张三')

2  INSERT INTO KK (id, [name]) VALUES (2, '李四')

3  INSERT INTO KK (id, [name]) VALUES (3, '王五')

4  INSERT INTO KK (id, [name]) VALUES (4, '赵六')

 

这是最终建立的表:

DropDownList控件

 

二:

然后是前台代码;

1 <div>

2     <asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList>

3     <asp:Button ID="Button1" runat="server" Text="Button" OnClick ="Button1_Click"/>

4     <asp:Label ID="Label1" runat="server" Text=""></asp:Label>

5 </div>

*不需要设置AutoPostBack

 

后台代码:

web.config中数据库连接字符串:

1   <connectionStrings>

2     <add name="connectionString" connectionString="data source = (local); database = TEMP; integrated security = true"/>

3   </connectionStrings>

 

后台之中Page_load中的代码(代码初始化,用于打开界面是就进行数据绑定):

 1 protected void Page_Load(object sender, EventArgs e)

 2 {

 3     if (!IsPostBack)

 4     /* 为什么判断IsPostBack:当你需要执行一些仅需要在页面第一次浏览时执行的事件

 5         * 比如页面初始化,数据绑定之类的操作时,需要将操作放在if(!IspostBack)里面,

 6         * 这样当你在点击页面中的按钮或者执行其他回发事件时,不贵再次初搜索始化或者

 7         * 重复绑定数据,提高了执行效率。

 8         */

 9     {

10         string connectionString = ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString;

11 

12         SqlConnection connection = new SqlConnection(connectionString);

13 

14         connection.Open();

15 

16         string sql = "SELECT * FROM KK";

17 

18         SqlCommand cmd = new SqlCommand(sql, connection);

19 

20         SqlDataReader sdr = cmd.ExecuteReader();

21 

22         //任意给的字段名,只要是想显示在界面上的就行。其值给了:Text

23         this.DropDownList1.DataTextField = "name";

24 

25         //任意给得字段名,只要是想在后台看到前台看不到的数据就行。其值给了:Value

26         this.DropDownList1.DataValueField = "id";//此字段可以去掉。value的值默认为Text的值。

27 

28         this.DropDownList1.DataSource = sdr;

29 

30         this.DropDownList1.DataBind();

31 

32         sdr.Close();

33 

34         connection.Close();

35     }

36 }

其中,检查网页是否会发很重要。if (!IsPostBack)。如果没有这个,将无法使用。

 

后台之中Button1(结果)按钮:

 1 /// <summary>

 2 /// Button1按钮的点击事件

 3 /// </summary>

 4 /// <param name="sender"></param>

 5 /// <param name="e"></param>

 6 protected void Button1_Click(object sender, EventArgs e)

 7 {

 8     string s = string.Empty;

 9 

10     //SelectedItem:获取列表控件中索引最小的选定项。即是取的选中的值。

11     s = this.DropDownList1.SelectedItem.Text;

12 

13     this.Label1.Text = "您选中的是:" + s;

14 }

 

最终运行结果:

DropDownList控件

 

以上就是DropDownList控件的用法。

 

 

 

你可能感兴趣的:(list)