Webform 常用控件

一,简单控件

1,Lable——标签:在网页中呈现出来的时候会变成span标签

属性:Text——标签上的文字

    BackColor,ForeColor——背景色,前景色

   Font——字体   

  Bold-加粗
  Italic-倾斜
  UnderLine-下划线     OverLine 上划线     StrikeOut 删除线
  Name - 字体名
  Size - 字体的大小

BorderColor——边框颜色

  BorderWidth-边框粗细
  BorderStyle - 边框样式

  Height——高

  Width——宽

  Enabled-是否可用
  Visible-是否可见
  ToolTip-鼠标指上去的提示信息
  CssClass - 样式表的class选择器

2.Literal——这也是一个文本标签,但它在网页中显示的时候不会变成span标签

它 的属性很少,是派生自control类的

3.TextBox——文本框     HiddenField——隐藏域  textarea--文本域 

属性:它拥有Lable所有的属性

   TextMode:文本框的呈现模式——SingleLine--单行文本框;MultiLine-多行文本框;Password-密码框

       ReadOnly - 只读
       MaxLength - 最大输入的字符数。只有TextMode是SingleLine和Password的时候起作用,在MultiLine的时候不起作用。

       Columns:宽度,以字母个数为单位
       Rows:高度,以行数为单位。只有TextMode是MultiLine的时候才起作用。在单行文本或多行文本下是不起作用的。

4.Button——按钮      LinkButton 超链接按钮        ImageButton 图片按钮(ImageUrl属性,需要把图片放项目文件夹中,如果VS没有显示出来,需要刷新下)

属性:它拥有Lable所有的属性

        OnClientClick:当按钮被点击的时候,要执行的客户端的JS代码。它的触发要在按钮的C#事件代码之前。

5.HyperLink:超链接

属性:它拥有Lable所有的属性

       NavigateUrl:超链接指向的地址,相当于href

   Target:打开位置

   ImageUrl:图片超链接的地址

6.Image——图片

属性:拥有Lable所有的属性

 ImageUrl:图片的地址

 

二,复合控件

1.DropDownList——下拉列表    拥有Lable的所有属性

对于DropDownlist必须会做三件事

(1)把内容填进去

法一:逐项添加

复制代码
 private void FillList()
    {
        List<QuanxianData> list = new QuanxianDA().Select();

        //QuanxianData qd=new QuanxianData();   
        //qd.Qname="请选择";
        //qd.Qno="-1";
        //list.Insert(0, qd);在第一项加上“请选择”的功能

foreach (QuanxianData data in list)
        {
            ListItem item = new ListItem();
            item.Text = data.Qname;
            item.Value = data.Qno;
            DropDownList1.Items.Add(item);
        }
    }
复制代码

法二:数据绑定(用这种简便方法)

复制代码
 private void FillList2()
    {
        List<QuanxianData> list = new QuanxianDA().Select();
        DropDownList1.DataSource = list;//绑定数据源
        DropDownList1.DataTextField = "Qname";//要显示哪一数据列
        DropDownList1.DataValueField = "Qno";//要设置一个value值
        DropDownList1.DataBind();  //最终执行绑定填充,不要漏掉
    }


//linq连接数据库方法

public partial class _Default : System.Web.UI.Page

{
protected void Page_Load(object sender, EventArgs e)
{
testDataContext _context = new testDataContext();
DropDownList1.DataSource= _context.Nation;
DropDownList1.DataTextField ="Name";//要显示哪一项内容
DropDownList1.DataValueField = "Code";//
DropDownList1.DataBind();

 //最终执行绑定填充,不要漏掉

}
}

复制代码

技巧:如何给下拉列表加上“请选择”的功能

1.用以上代码中的方法

2.事先在下拉列表中设置静态的"请选择"列表项。然后再绑定或添加数据的时候在后面添加上。

如果采用数据绑定模式,默认情况下会把原有的项冲掉。需要设置AppendDataBoundItems属性为true。

3.所有的项都绑定或填加到下拉列表后,再写代码加上”请选择“的功能。

 protected void Page_Load(object sender, EventArgs e)
    {
        FillList();
        ListItem li = new ListItem("请选择", "-1");
        DropDownList1.Items.Insert(0, li);
    }

(2)把选中的值取出来:选择列表里的项,点击按钮,在标签中显示选择的内容

 注:由于DropDownList需要打到服务器执行,需要把属性AutoPostBack(当内容更改时,自动发回到服务器)改为Ture;

复制代码
 protected void Button1_Click(object sender, EventArgs e)
    {
        Label1.Text = DropDownList1.SelectedItem.Text + DropDownList1.SelectedItem.Value;//取出选中项的文本和值
        Label1.Text = DropDownList1.SelectedValue;//取出选中项的值
        int index = DropDownList1.SelectedIndex;//取出选中项的索引号
        Label1.Text = DropDownList1.Items[index].Text + DropDownList1.Items[index].Value;//取出对应索引号的文本和值
    }
复制代码

 

注意:每次点击按钮时,都是要先执行Page_Load中的代码,然后再执行Button-Click中的代码

所以在Page_Load中要加入一下代码

if(!IsPostBack)
{
防止每次点击提交页面都会执行这里面的代码。
这里面的代码,只有页面初次加载的时候才被执行。点击按钮提交的时候,不会被执行到。
以后记着:在Page_Load事件中99%的情况下需要写这段判断
}

(3)设定某项为选中项

给DropDownList的两个属性赋值:
SelectedIndex = 选中的索引号
SelectedValue = 选中项的值

 protected void Button2_Click(object sender, EventArgs e)
    {
        //DropDownList1.SelectedIndex = Convert.ToInt32(TextBox1.Text);
        DropDownList1.SelectedValue = TextBox1.Text;
    }

 2.RadioButtonList——单选按钮列表  Radiobutton--单选按钮

1.Radiobutton: 属性GroupName组名,同一个组名下的单选按钮产生互斥效果(例如:注册时选男、女)

例子:给2个Radiobutton设置同样的组名

属性:它拥有Dropdownlist所有的属性和功能

RepeatDirection:布局的方向

RepeatLayout:布局方式

RepeatColumns:一行显示几个

案例: 和Dropdownlist相同

3.CheckBoxList——复选框列表  CheckBox——复选框

1.CheckBox——复选框:属性:checked 是否选中;取值checkbox.text="";

拥有RadioButtonList所有的属性和功能

显示数据:

protected void Page_Load(object sender, EventArgs e)
    {
        DataClassesDataContext _conect = new DataClassesDataContext();//建立上下文连接对象
       CheckBoxList1.DataSource =   _conect.Nation;  //获取数据源
       CheckBoxList1.DataTextField = "Name";//要显示的项
       CheckBoxList1.DataValueField = "Code";//返回值
       CheckBoxList1.DataBind();//绑定数据源

    }

 

技巧:
(1)如何获取选中的多个项?
//获取复选框的选中值。
//思路:遍历复选框列表中的每个项,判断每个项的选中情况。

foreach (ListItem li in CheckBoxList1.Items)
{
   if (li.Selected)
   {
     Label2.Text += li.Value + ",";
   }
}

 

(2)如何设置几个项同时被选中

//设置文本框中指定的项(用 | 隔开的每一项)被选中
//思路:从文本框中解析出要选中的项的value值,然后再遍历每一项,判断是否是文本框中指定的,是的话就设为选中,不是就设为不选中。

CheckBoxList1.SelectedIndex = -1; //先清空列表中被选中的项

string s = TextBox1.Text;
string[] ss = s.Split('|'); //解析出要选中的value值

  foreach (ListItem li in CheckBoxList1.Items)
  {
    if (ss.Contains(li.Value))
     {
          li.Selected = true;
          continue;
     }
 }

 

4.ListBox——列表框

拥有Dropdownlist所有的属性和功能

SelectionMode - Single,Multiple

案例:如果是单选的话就照着Dropdownlist来做

如果是多选的话就照着Checkboxlist来做

 

 

posted @ 2015-10-12 11:23  Franky2015  阅读(312)  评论(0编辑  收藏  举报