学习顺序:1、如何绑定数据 2、如何设置绑定项 3、如何取出数据
1、RadioButton - 单选按钮 RadioButtonList - 单选按钮组
控件中的ID生成了相同名字的 ID、Name、Value
编译前
<asp:RadioButton ID="RadioButton1" runat="server" Text="男" />
<asp:RadioButton ID="RadioButton2" runat="server" Text="女" />
页面展示 单选按钮之间不互斥,自动生成name,默认name不同(李献策lxc)
编译后
<input id="RadioButton1" type="radio" name="RadioButton1" value="RadioButton1" /><label for="RadioButton1">男</label>
<input id="RadioButton2" type="radio" name="RadioButton2" value="RadioButton2" /><label for="RadioButton2">女</label>
属性:
GroupName - 分组
<asp:RadioButton ID="RadioButton1" runat="server" Text="男" GroupName="sex" />
<asp:RadioButton ID="RadioButton2" runat="server" Text="女" GroupName="sex" />
RadioButtonList - 单选按钮组(李献策lxc)
一、绑定数据
新建一个类
1、自带构造函数 2、没有命名空间
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
List<States> slist = new List<States>(); States s1 = new States() { Code = "", Name = "张店" };
States s2 = new States() { Code = "", Name = "淄川" };
States s3 = new States() { Code = "", Name = "博山" };
States s4 = new States() { Code = "", Name = "桓台" };
States s5 = new States() { Code = "", Name = "临淄" };
States s6 = new States() { Code = "", Name = "周村" }; slist.Add(s1);
slist.Add(s2);
slist.Add(s3);
slist.Add(s4);
slist.Add(s5);
slist.Add(s6); RadioButtonList1.DataSource = slist;
RadioButtonList1.DataTextField = "Name";
RadioButtonList1.DataValueField = "Code";
RadioButtonList1.DataBind(); } }
为复选按钮组绑定信息
网页展示
后台代码
<div> <table id="RadioButtonList1">
<tr>
<td><input id="RadioButtonList1_0" type="radio" name="RadioButtonList1" value="" /><label for="RadioButtonList1_0">张店</label></td>
</tr><tr>
<td><input id="RadioButtonList1_1" type="radio" name="RadioButtonList1" value="" /><label for="RadioButtonList1_1">淄川</label></td>
</tr><tr>
<td><input id="RadioButtonList1_2" type="radio" name="RadioButtonList1" value="" /><label for="RadioButtonList1_2">博山</label></td>
</tr><tr>
<td><input id="RadioButtonList1_3" type="radio" name="RadioButtonList1" value="" /><label for="RadioButtonList1_3">桓台</label></td>
</tr><tr>
<td><input id="RadioButtonList1_4" type="radio" name="RadioButtonList1" value="" /><label for="RadioButtonList1_4">临淄</label></td>
</tr><tr>
<td><input id="RadioButtonList1_5" type="radio" name="RadioButtonList1" value="" /><label for="RadioButtonList1_5">周村</label></td>
</tr>
</table> </div>
后台代码
1、自动按照索引排序 2、相同的name 3、自动生成value
4、Table 布局(弊端:1、Table布的局,如果要将某个部分换到其他位置,则整个Table要重新做 2、搜索引擎是无法趴到Table内的内容)
二、设置选定项
1、通过索引选中
RadioButtonList1.SelectedIndex = 0;
如果是最后一个(李献策lxc)
RadioButtonList1.SelectedIndex = slist.Count - 1;
2、通过Value值选中
RadioButtonList1.SelectedValue = "001";
3、如何通过Text来设置选中项?
foreach(ListItem li in RadioButtonList1.Items)
{
if (li.Text == "临淄")
{
li.Selected = true;
}
}
通过遍历设置选中项
三、取出数据
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List<States> slist = new List<States>(); States s1 = new States() { Code = "", Name = "张店" };
States s2 = new States() { Code = "", Name = "淄川" };
States s3 = new States() { Code = "", Name = "博山" };
States s4 = new States() { Code = "", Name = "桓台" };
States s5 = new States() { Code = "", Name = "临淄" };
States s6 = new States() { Code = "", Name = "周村" }; slist.Add(s1);
slist.Add(s2);
slist.Add(s3);
slist.Add(s4);
slist.Add(s5);
slist.Add(s6); RadioButtonList1.DataSource = slist;
RadioButtonList1.DataTextField = "Name";
RadioButtonList1.DataValueField = "Code";
RadioButtonList1.DataBind(); foreach (ListItem li in RadioButtonList1.Items)
{
if (li.Text == "临淄")
{
li.Selected = true;
}
}
} Button1.Click += Button1_Click; } void Button1_Click(object sender, EventArgs e)
{
TextBox1.Text = RadioButtonList1.SelectedValue;
} }
设置按钮事件取出value值
void Button1_Click(object sender, EventArgs e)
{
TextBox1.Text = RadioButtonList1.SelectedItem.Text;
}
设置按钮事件取出Text值则为
======================================================
2、CheckBoxList - 复选按钮组
一、绑定数据
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List<States> slist = new List<States>(); States s1 = new States() { Code = "", Name = "张店" };
States s2 = new States() { Code = "", Name = "淄川" };
States s3 = new States() { Code = "", Name = "博山" };
States s4 = new States() { Code = "", Name = "桓台" };
States s5 = new States() { Code = "", Name = "临淄" };
States s6 = new States() { Code = "", Name = "周村" }; slist.Add(s1);
slist.Add(s2);
slist.Add(s3);
slist.Add(s4);
slist.Add(s5);
slist.Add(s6); CheckBoxList1.DataSource = slist;
CheckBoxList1.DataTextField = "Name";
CheckBoxList1.DataValueField = "Code";
CheckBoxList1.DataBind(); foreach (ListItem li in CheckBoxList1.Items)
{
if (li.Text == "临淄")
{
li.Selected = true;
}
}
} Button1.Click += Button1_Click; } void Button1_Click(object sender, EventArgs e)
{
TextBox1.Text = CheckBoxList1.SelectedItem.Text;
} }
数据
二、设置选定项
同RadioButtonList
三、取出数据
void Button1_Click(object sender, EventArgs e)
{
string s="";
foreach(ListItem li in CheckBoxList1.Items)
{
if (li.Selected)
{
s += li.Text;
}
}
TextBox1.Text = s;
}
取出数据
===========================================================
RadioButtonList 与 CheckButtonList 的属性
RepeatDirection:项的布局方向
Horizontal:横向排列 Vertical:纵向排列
RepeatLayout:项是否在某个表或流入中重复
Talbe:数据在表格中 Flow:数据在流式布局中 (李献策lxc)
OrderedList:数据按照有序列表排列(只能纵向排列) UnorderedList:数据在无序列表中排列(只能纵向排列)
RepeatColumns:用于布局项的列数
===========================================================
3、下拉列表DropDownList - 对应单选按钮组
WinForm - ComboBox WebForm - DropDownList
一、绑定数据
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List<States> slist = new List<States>(); States s1 = new States() { Code = "", Name = "张店" };
States s2 = new States() { Code = "", Name = "淄川" };
States s3 = new States() { Code = "", Name = "博山" };
States s4 = new States() { Code = "", Name = "桓台" };
States s5 = new States() { Code = "", Name = "临淄" };
States s6 = new States() { Code = "", Name = "周村" }; slist.Add(s1);
slist.Add(s2);
slist.Add(s3);
slist.Add(s4);
slist.Add(s5);
slist.Add(s6); DropDownList1.DataSource = slist;
DropDownList1.DataTextField = "Name";
DropDownList1.DataValueField = "Code";
DropDownList1.DataBind(); }
}
绑定数据
二、设置选定项
同上
三、取出选定项
同时
属性
=========================================================
4、ListBox - 对应复选按钮组,默认单选
属性:
SelectionMode:选择模式
Single:单选 Multiple:多选