Webform(简单控件、复合控件)

一、简单控件:

1.label控件

<asp:Label ID="Label1" runat="server" Text="账  号:"></asp:Label>

被编译为:

<span id="Label1" >账  号:</span>

属性:

Text:文本
ForeColor:字体颜色
Visible:是否可见
CssClass:即HTML的class

2.Literal

类似label,但它不会被编译,只会在位置上将Text内容完全展示出来,可以往它的Text属性中添加js代码

3.Textbox

不一定被编译成什么元素,它被编译成什么表单元素取决于TextMode,它能够完成form12个表单元素中的文本类(除隐藏域),它还能完成Webform提供的一些元素

(1)文本框

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

它被编译为:

<input name="TextBox1" type="text" id="TextBox1" />

(2)密码框

<asp:TextBox ID="TextBox2" runat="server" TextMode="Password"></asp:TextBox>

它被编译为:

<input name="TextBox2" type="password" id="TextBox2" />

(3)文本域

<asp:TextBox ID="TextBox3" runat="server" TextMode="MultiLine"></asp:TextBox>

它被编译为:

<textarea name="TextBox3" rows="2" cols="20" id="TextBox3">
</textarea>

(4)TextMode属性

color:只能选择颜色

datetime-local:可选择时间,输入时间,有日历

number:只能输入数字

4.按钮类

普通按钮和重置按钮在Webform没有提供按钮

<input type="button" value="按钮1" />
<input type="reset" value="重置" />

(1)Button

<asp:Button ID="Button1" runat="server" Text="Button" />

它被编译为:

 <input type="submit" name="Button1" value="Button" id="Button1" />/*提交按钮*/

(2)ImageButton

<asp:ImageButton ID="ImageButton1" runat="server" />

它被编译为:

 <input type="image" name="ImageButton1" id="ImageButton1" src="" />/*图片按钮*/

(3)LinkButton 超链接按钮

(4)按钮的OnClientClick是执行客户端脚本(js),客户端(js)执行优先级高于服务端(C#)

5.隐藏域

HiddenField控件

<asp:HiddenField ID="HiddenField1" runat="server" />

它被编译为:

<input type="hidden" name="HiddenField1" id="HiddenField1" />

 二、复合控件

1.单选按钮:
HTML编码方式:

<input type="radio" name="" checked="checked"/>

Webform:RadioButton 不建议使用
RadionButtonList
使用数据库取值步骤:
(1)数据绑定

List<Nation> list = new NationData().Select();

方法1:

RadioButtonList1.DataSource = list;//数据源
            RadioButtonList1.DataTextField = "NationName";//显示值
            RadioButtonList1.DataValueField = "NationCode";//实际值
            RadioButtonList1.DataBind();

方法2:

foreach (Nation n in list)
            {
                ListItem li = new ListItem(n.NationName, n.NationCode);
                RadioButtonList1.Items.Add(li);
            }

(2)设置默认选中项

RadioButtonList1.SelectedIndex = 0;或
  RadioButtonList1.SelectedValue = "N001";

(3)取值
添加一个按钮点击事件,事件中写:

 Label1.Text = "";
        ListItem li = RadioButtonList1.SelectedItem;
        Label1.Text += li.Value + "," + li.Text;

四、布局
RepeatDirection:项的布局方式 Vertical 纵向 Horizontal:横向
RepeatColumns:规定项的列数
RepeatLayout:项的布局方式 Table Flow (UnorderedList:无序列表 OrderedList:有序列表 前两种属性无效)
2.复选按钮
HTML编码方式:

<input type="checkbox" name="" checked="checked"/>

Webform:
CheckBox 不建议使用
CheckBoxList 
使用数据库取值步骤:
(1)数据绑定

遍历数据集合,ListItem

 foreach (Nation n in list)
            {
                ListItem li = new ListItem(n.NationName, n.NationCode);
                CheckBoxList1.Items.Add(li);
            }

(2)设置默认选中项
在数据添加的时候进行判断,设置Selected属性

复制代码
foreach (Nation n in list)
            {
                ListItem li = new ListItem(n.NationName, n.NationCode);
                if (li.Value == "N001" || li.Value == "N003")
                    li.Selected = true;
                CheckBoxList1.Items.Add(li);
            }
复制代码

3)取值
遍历所有的项,判断如果是选中状态那么就把值取出来保存

复制代码
Label1.Text = "";
        foreach (ListItem li in CheckBoxList1.Items)
        {
            if (li.Selected)
            {
                Label1.Text += li.Value + "," + li.Text + "|";
            }
        }
复制代码

四、布局
RepeatDirection:项的布局方式 Vertical 纵向 Horizontal:横向
RepeatColumns:规定项的列数
RepeatLayout:项的布局方式 Table Flow (UnorderedList:无序列表 OrderedList:有序列表 前两种属性无效)
3.下拉列表
HTML编码方式:

<select name="" id="" size=""   multiple="multiple">
     <option></option>
     <option></option>
 </select>  

(1)当它为一行可选菜单时:
Webform中使用DropDownList
使用数据库取值步骤与RadionButtonList相同,只是没有布局
(2)当它为列表时
Webform使用ListBox按钮,在属性中可选择单选还是多选
使用数据库取值步骤与CheckBoxList 相同,只是没有布局

原文地址:https://www.cnblogs.com/1711643472qq/p/6178427.html