DropDownList 下拉列表
会被编译为select option
ps.name 服务端常用,id 客户端常用
一般用法:
一、将数据放进去
方法一:同WinForm相同,给定数据源,然后绑定数据
DropDownList1.DataSource = new NationData().Select();//数据源指向 DropDownList1.DataTextField = "NationName";//显示字段绑定 DropDownList1.DataValueField = "NationCode";//隐藏字段绑定 DropDownList1.DataBind();
方法二:使用foreach遍历取出的数据
List<Nation> Nlist = new NationData().Select(); foreach (Nation n in Nlist) { ListItem li = new ListItem(n.NationName, n.NationCode); if (li.Value == "N003") { li.Selected = true; } DropDownList1.Items.Add(li); }
二、将数据取出
1、取一条数据
可以根据需求取Value或者Select
可以直接点出,造一个string类型的数据接收
2、取多条数据
因为DropDownList只能选中一条,所以不能取出多条数据。
可多选的控件可以取出多条数据,例如ListBox
ListBox的添加数据的方法与DropDownList相同,取出也基本类似
但可以通过更改SelectionMode的属性多选或者单选。
SelectionMode="Multiple" 时为多选
SelectionMode="Single" 时为单选
取值可使用遍历
string end = ""; foreach (ListItem li in ListBox1.Items) { if (li.Selected) { end += li.Text + " - " + li.Value + ","; } } Label1.Text = end;
CheckBoxList 多选列表
使用方法也ListBox相同
多了三个布局用的属性 RepeatDirection RepeatColumns RepertLayout
RepeatDirection Vertical 垂直布局
Horizontal 水平布局
RepertLayout 布局方式
Flow 流式布局
Table 表格布局
OrderedList 有序表
UnorderedList 无序表
RepeatColumns 一行多少数据
div布局灵活,table布局不够灵活。搜索的蜘蛛程序在搜索时使用div的数据比table中的数据更容易被抓取到
RadioButtonList 单选列表
使用与之前的控件基本相同,但只能单选
注意:Http协议的无状态性
无状态性是指:每次时间提交都会刷新页面,每次刷新必走load端,会造成列表数据的重复绑定。
使用if (!IsPostBack)可以尽可能的避免这种情况