C#-WebForm-复合控件
学习顺序: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:多选
C#-WebForm-复合控件的更多相关文章
- webform 复合控件
RadioButtonList 单选按钮列表 属性:RepeatColumns 用于布局项的列数(每一行的个数) RepeatDirection 选择Vertical,纵向排列:选择Horizont ...
- 【2017-05-19】WebForm复合控件
自动提交的属性: AutoPostBack="True" 1.RadioButtonList 单选集合 -属性:RepeatDirection:Vertical (垂直排布 ...
- WebForm复合控件RadioButtonList、CheckBoxList、DropDownList
1.RadioButtonList 单选集合 -属性:RepeatDirection:Vertical (垂直排布)/Horizontal (横向排布) RepeatLayout:Table ...
- 【2017-05-19】WebForm复合控件、用DropDownList实现时间日期选择。
自动提交的属性: AutoPostBack="True" 1.RadioButtonList 单选集合 -属性:RepeatDirection:Vertical (垂直排布 ...
- Webform(简单控件、复合控件)
一.简单控件: 1.label控件 <asp:Label ID="Label1" runat="server" Text="账 号:" ...
- webform简单、复合控件
简单控件: 1.Label 会被编译成span标签 属性: Text:文本内容 CssClass:CSS样式 Enlabled:是否可用 Visible:是否可见 2.Literal 空的,C#会把里 ...
- WebForm简单控件,复合控件
简单控件: 1.Label 会被编译成span标签 属性: Text:文本内容 CssClass:CSS样式 Enlabled:是否可用 Visible:是否可见 __________________ ...
- WebForm 简单控件、复合控件
简单控件: Label:被编译成span 样式表里设置lable的高度: display:inline-block; Text --文本 ForeColor --字体颜色 Visible -- ...
- WebForm 【复合控件】
一 复合控件(取值,赋值用法相近) RadioButtonList --单选按钮 (一组列表) <asp:RadioButtonList ID="RadioButtonL ...
- webform(复合控件)
一.组合单选 RadioButtonList 单选按钮与简单控件不同,可理解为在集合中放置多对象 例: <asp:RadioButtonList ID="RadioButtonList ...
随机推荐
- QML 从无到有 2 (移动适配)
随着项目深入,需要移植到安卓上,问题来了,QML安卓适配! 幸好PC端程序和手机屏幕长宽比例相似.虽然单位像素,尺寸不同,通过比例缩放,可以实现组件PC和安卓通用代码. 第一步:定义全局的转换函数(3 ...
- Struts 原理
今天开始接触公司的框架,叫YNA,三个字母应该是雅马哈的缩写,这个框架听公司前辈说功能很强大,但实际上我看不懂.哈哈...... 其中整合了SSH框架,接下来我说下Struts的一些原理 其实这张图就 ...
- 服务器搭建多个tomcat服务器
以三个tomcat为例: 先配置环境变量: 编辑 /etc/profile 文件 添加三个tomcat环境变量:value为tomcat目录 //第一个tomcatCATALINA_BASE=/usr ...
- 在一个项目各个子模块中使用Maven的一些通用的准则
1.各个子模块都应该使用相同的groupId(如:com.mvnbook.account); 2.各个子模块如果一起开发和发布,还应该使用相同的版本:version: 3.各个子模块还应该使用一致的前 ...
- java多线程同步,等待,唤醒
notify().notifyAll().wait()属于java.lang.Object,java.lang.Thread也是Object,自然也有上述方法: sleep().interrupt() ...
- 9.2.4 .net core 通过ViewComponent封装控件
我们在.net core中还使用了ViewComponent方式生成控件.ViewComponent也是asp.net core的新特性,是对页面部分的渲染,以前PartialView的功能,可以使用 ...
- SAP CRM 复用视图
在设计任何视图或组件的时候,我们需要以可复用的方式来设计它.UI组件设计的主要目标即可复用. 例如:几乎每个事务都要处理合作伙伴(客户).如果我们想要在Web UI显示那些合作伙伴,需要设计一个视图. ...
- android图片验证码--自绘控件
自绘控件的内容都是自己绘制出来的 大致流程如下: 1.定义一个类继承view 使用TypedArray初始化属性集合 在view的构造方法中 有一个AttributeSet的参数 很明显是用来保存控件 ...
- CoordinatorLayout, AppBarLayout, CollapsingToolbarLayout使用
本文介绍Design Support Library中CoordinatorLayout, AppBarLayout, CollapsingToolbarLayout的使用. 先列出了Design S ...
- freeswitch对接其它SIP设备
这几天用到freeswitch对接其它设备方面的知识,这里整理下,也方便我以后查阅. 操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 一.freeswitch作为被叫 ...