WebForm 【复合控件】
一 复合控件(取值,赋值用法相近)
RadioButtonList --单选按钮 (一组列表)
<asp:RadioButtonList ID="RadioButtonList2" runat="server">
</asp:RadioButtonList>

-- 每一个单选按钮就是一个 listitem
控件属性
RepeatColumns : 3; -- 有3列(每行有几个按钮)
RepeatDirection vertical -- 垂直排列
Horizontal --水平排列
RepeatLayout Table -- 用表格的方式展现
Flow --用 span 的方式展现
应用
<asp:RadioButtonList ID="RadioButtonList1" runat="server">
<asp:ListItem Value ="True" Selected ="True" >男</asp:ListItem>
<asp:ListItem Value ="False" >女</asp:ListItem>
</asp:RadioButtonList>
赋值
1、
protected void Page_Load(object sender, EventArgs e)
{
//绑定数据
RadioButtonList1.DataSource = new usernationData().SelectAll();
RadioButtonList1.DataTextField = "NationName";
RadioButtonList1.DataValueField = "NationCode";
RadioButtonList1.DataBind(); //设置默认项
foreach ( ListItem li in RadioButtonList1.Items )
{
if (li.Value == "n003")
{
li.Selected = true; } } }
RadioButtonList1.DataSource = new usernationData().SelectAll() -- 指向数据源
RadioButtonList1.DataTextField = "NationName"; -- 显示的内容
RadioButtonList1.DataValueField = "NationCode"; -- 隐藏的内容
RadioButtonList1.DataBind(); -- 绑定
2、
protected void Page_Load(object sender, EventArgs e)
{
List<usernation> ulist = new usernationData().SelectAll(); if (IsPostBack == false)
{
foreach (usernation u in ulist)
{
ListItem li = new ListItem();
li.Text = u.NationName;
li.Value = u.NationCode; if (li.Value == "N003")
{
li.Selected = true;
} RadioButtonList1.Items.Add(li);
} } }
-- 直接用遍历绑定
if( ! ispostback )
{
| 只需要在页面第一次加载的时候才执行的代码写到这里面
| 注意95%的代码都要写到这里面
| -- !!!!事件委托不能写到这里面
}
取值
RadioButtonList1.SelectedValue; -- 获取隐藏的值
RadioButtonList1.SelectedItem.Text; -- 获取看到的值
CheckBoxList -- 复选列表
<asp:CheckBoxList ID="CheckBoxList1" runat="server">
</asp:CheckBoxList>

CheckBoxlist.Items 所有选项
控件属性
AutopostBack = " true "; 自动提交
SelectedIndexChanged 选项一改变就触发
取值
string s = "";
foreach (ListItem li in CheckBoxList1.Items)
{
if (li.Selected)
{
s += li.Text;
}
}
Label.Text = s;
CheckBoxList1.SelectedItem.Text; -- 选单个值
DropDownList -- 下拉列表
<asp:DropDownList ID="DropDownList1" runat="server">
</asp:DropDownList>
赋值
List<usernation> ulist = new usernationData().SelectAll();
if (IsPostBack == false)
{
foreach (usernation u in ulist)
{
ListItem li = new ListItem();
li.Text = u.NationName;
li.Value = u.NationCode;
DropDownList1.Items.Add(li);
}
}
取值
DropDownList1.SelectedItem.Text;
清空下拉项
DropDownList1.Items.Clear( );
dropDownList控件绑定数据后,在显示时默认情况下是第一个选项处于选中状态。这时,展开控件的所有选项,
如果第一次选择的就是默认项,那么,dropdownlist_selectedChange事件将不会触发,
只有在选择一次非默认选项后,再返回来选择才会有效。
解决方法:
1、dropdownlist绑定的数据源不变,页面加载时默认选项的信息也随着页面加载同时显示。
foreach ( ListItem li in DropDownList1.Items )
{
if (li.Value == "n003")
{
li.Selected = true; }
}
1、给dropdownlist添加一个默认选项(“——请选择——”),
---------------------------------------------------------------------------------
page_load事件在每一次页面刷新的时候都会执行,会把数据重新绑定一次,再去执行按钮事件
判断页面是否是第一次加载还是响应回发
if( ispostback == false )
{
-- 第一次加载
}
-- 响应回发(点击事件等)
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="RadioButtonList ...
随机推荐
- Ocelot入门实践
博主是第一次写技术文档,一是对这两年工作以来的一些技术和经验进行整理,二也是希望能和大家多多分享交流,如有写的不对的地方望大家多多指正.进入正题 Ocelot 概念就不说了,大家自行百度,今天做一个O ...
- 二、winForm-DataGridView操作——DataGridView 操作、属性说明
注册:Form加载窗体代码 /// <summary> /// 窗体加载Form1 /// </summary> /// <param name="sender ...
- WPF学习笔记(4):获取DataGridTemplateColumn模板定义的内容控件
在之前的DataGrid的DataGridTemplateColumn列中,自定义了一个TextBox控件,但是在C#代码中提示找不到这个控件,导致无法对该控件进行操作.在网上搜索后,发现一些处理方法 ...
- Flask系列09--Flask中WTForms插件,及自定义验证器
一.概述 django中的forms组件非常的方便,在flask中有WTForms的组件实现的也是类似的功能, 安装这个插件 二.简单使用 文档地址https://wtforms.readthedoc ...
- linux 的计划任务 定时任务
linux的计划任务,也叫做定时任务 https://www.cnblogs.com/mingforyou/p/3930636.html 名字是crond 查看linux本机的定时任务 crontab ...
- 28_网络编程-TCP/UDP
一.传输层 1.定义 IP首部有一个协议字段,用来标识网络层(IP)的上一层所采用的是哪一种传输层协议.根据这个字段的协议号,就可以识别IP传输的数据部分究竟是TCP的内容还是 ...
- 预防和避免死锁的方法及银行家算法的java简单实现
预防死锁 (1) 摒弃"请求和保持"条件 基本思想:规定所有进程在开始运行之前,要么获得所需的所有资源,要么一个都不分配给它,直到所需资源全部满足才一次性分配给它. 优点:简单.易 ...
- gulp 打包错误 TypeError: Path must be string. Received undefined
Running gulp gives “path.js:7 throw new TypeError('Path must be a string. Received ' + inspect(path) ...
- JS脚本实现CSDN免登陆免关闭广告插件自动展开“阅读更多”内容
最近在CSDN查资料,总是弹出以下弹窗,然后就自动跳转到登录页面,蛋疼! 于是重新捣腾了一下,修改了原来的脚本,最新的脚本代码如下: 温馨提示:在打开CSDN页面后立刻执行以下脚本即可免登陆免关闭广告 ...
- 锐捷客户端下虚拟机VMware无法联网的问题
打开VMware,选择右下角的网络适配器,设置为NAT模式. 如果还不能上网,则打开电脑的任务管理器,保证VMwate的服务保持开启. 但是锐捷客户端,会自动检测并且关闭VMware NAT Serv ...