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 ...
随机推荐
- C# 开源仪表盘库—Agauge App
1.简介 有个叫A.J.Bauer 的大神在System.Windows.Forms.Control类的基础上建立了一个显示各种仪表盘的类. 英文版简介:C# Tu ...
- C# 动态创建SQL数据库(一)
最近在做项目中要求能够要求动态添加数据库并建表.具体思路如下 1 提供数据名,根据数据库创建数据库 2 自定数据库与数据表,提供数据表自定与数据类型创建表 创建sqlhelper类,用于数据库操作 u ...
- 【BZOJ3238】 [Ahoi2013]差异(SAM)
传送门 BZOJ 洛谷 Solution SA版本的 考虑可以建一个SAM? 那么接下来我们就考虑每一对点对之间的贡献了. 把这个式子化简一下就是无序点对之间的那啥(自己意会一下) 然后我们定义边权为 ...
- 暴破助攻提权:ruadmin
i春秋作家:yangyangwithgnu 1 缘由 千辛万苦拿下的 webshell 不是 www-data 用户就是 networkservice 权限,要想拓展攻击面.扩大战果,提权,是必经之路 ...
- 对于opencv全面貌的认识和理解
1.opencv其实最开始只有源码,也就是sources中的代码,sources中有个modules,进入里面是各个我们平常使用的模块,如下图. 进入任意一个模块,比如calib3d,其中有inclu ...
- POJ 2492
#include<iostream> #include<stdio.h> #define MAXN 2050 using namespace std; int pre[MAXN ...
- 题外话 -- windows10系统C盘空间变大 CPU莫名跑满
场景描述: 安装windows10一段时间了,发现C盘空间越来越小 CPU有时候,莫名其妙的跑满,造成操作卡顿. 如何处理参考: windows10 C盘空间清理:https://jingyan.ba ...
- 在matlab中实现线性回归和logistic回归
本文主要讲解在matlab中实现Linear Regression和Logistic Regression的代码,并不涉及公式推导.具体的计算公式和推导,相关的机器学习文章和视频一大堆,推荐看Andr ...
- (转)centos 7 Tomcat 8.5 的安装及生产环境的搭建调优
原文:https://www.cnblogs.com/linhankbl/articles/9149804.html#top JVM菜鸟进阶高手之路七(tomcat调优以及tomcat7.8性能对比) ...
- vtk文件编写
在paraview中加载vtk文件,可以很好的显示三维空间图像,如下cpp代码: #include <iostream> #include <fstream> #include ...