Posted on 2006-05-28 14:46
H_J_H 阅读(88)
评论(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