Posted on 2006-05-28 14:46
H_J_H 阅读(87)
评论(0) 编辑 收藏 引用
这两控件在很大程度上说也是很相近的,所以也综合做了一个演示,相对的复选有的选项单选也有,希望您如果有什么含糊的话最好是举一反三多做两次,如果还有不明白可以QQ 110535808 ,我很乐意一起学习,一起进步!
前台HTML代码
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
CheckBoxList RadioButtonList 综合演示<br />
<br />
主要功能有:控制他的布局方式,显示选择了那些项<br />
<asp:CheckBoxList ID="CheckBoxList1" runat="server">
</asp:CheckBoxList><br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="选择" Width="84px" /><br />
<br />
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True" OnCheckedChanged="CheckBox1_CheckedChanged"
Text="横向" Width="53px" /><br />
<br />
其实这个复选框的作用完全可以用按纽取代,只是要麻烦很多,但是我想如果你真的这样举一反三的做了的话,而且长期这样习惯的学习的话,那你肯定会比一般人学得好,比如你看我撒,(挖哈哈,偷笑,人家不夸自己夸)<br />
<br />
下面用RadioButtonList来控制上面的复选列表一排显示多少个元素,通俗点说就是他的列数,再通俗点说就是,你QQ我蛮,110535808<br />
<br />
<asp:RadioButtonList ID="RadioButtonList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged">
</asp:RadioButtonList><br />
</div>
</form>
</body>
</html>
后台CS代码
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)//你可以去掉这个判断看下效果,对你有帮助的
{
for (int i = 1; i <= 5; i++)
{
CheckBoxList1.Items.Add("第" + i + "项");//设置复选列表的值
RadioButtonList1.Items.Add(i.ToString());//设置单选列表的值
}
}
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{//设置复选列表的布局方式
if (CheckBox1.Checked)//如果该控件被选中
{
CheckBoxList1.RepeatDirection = RepeatDirection.Horizontal;//复选列表就水平排列
CheckBox1.Text = "纵向";//本控件的字变成 纵向
}
else
{
CheckBoxList1.RepeatDirection = RepeatDirection.Vertical;//列表垂直排列
CheckBox1.Text = "横向";//文字改变
}
}
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{//当下面的单选列表状态改变的时候激发
int i = Convert.ToInt32(RadioButtonList1.SelectedValue.ToString());//得到单选项的值
CheckBoxList1.RepeatColumns = i;//设置复选列表的列数为被选中的值
Response.Write(i.ToString());//在页面打印出被选项的值
}
protected void Button1_Click(object sender, EventArgs e)
{//当复选列表被选择的时候激发
for (int t = 0; t < CheckBoxList1.Items.Count; t++)
{//循环到复选列表的最大项
if (CheckBoxList1.Items[t].Selected)
{//如果发现当前项被选中的话就显示该项的文字。然后换行继续循环
Response.Write(CheckBoxList1.Items[t].Text.ToString()+ "<br>");
}
}
}
}
文章来源:
http://thcjp.cnblogs.com/archive/2006/05/28/411085.html