Code
Code
//1.绑定数据
this.lngCatalogID.DataSource = dt; //这里我绑到DataTable上了.
this.lngCatalogID.DataTextField = "strCatalogName"; //前台看到的值,也就是CheckBoxList中显示出来的值
this.lngCatalogID.DataValueField = "lngCatalogID"; //这个值直接在页面上是看不到的,但在源代码中可以看到
this.lngCatalogID.DataBind();
//2.获取钩选的项
for (int i = 0; i < CheckBoxList1.Items.Count; i++)
{
if (CheckBoxList1.Items[i].Selected)
Response.Write("你选的是" + CheckBoxList1.Items[i].Value + CheckBoxList1.Items[i].Text + "<br>");
}
//利用循环来顺序遍历每个选项,被选中的输出.
//给CheckBoxList选中的复选框 赋值
for (int i = 0; i < hfAnswers.Value.Split(',').Length; i++)
{
for (int j = 0; j < CBoxListAnswer.Items.Count; j++)
{
if (hfAnswers.Value.Split(',')[i] == CBoxListAnswer.Items[j].Value)
{
CBoxListAnswer.Items[j].Selected = true;
}
}
}
string m_strTemp = string.Empty;
for (int i = 0; i < CBoxListAnswer.Items.Count; i++)//读取CheckBoxList 选中的值,保存起来
{
if (CBoxListAnswer.Items[i].Selected)
{
m_strTemp += CBoxListAnswer.Items[i].Value + ",";
}
}
if (!string.IsNullOrEmpty(m_strTemp))
Label1.Text = m_strTemp.Substring(0, m_strTemp.Length - 1);
else
Label1.Text = m_strTemp;
//3.设置某项为钩选状态
foreach (ListItem li in lngCatalogID.Items)
{
if (li.Value.Equals("钩选条件")) //如果li.Value值等于某值,就钩选
{
li.Selected = true; //等于true就表示钩选啦.
break;
}
}
//数据绑定
checkedListBox1.DataSource = ds.Tables[0];
checkedListBox1.ValueMember = "intSectionID";
checkedListBox1.DisplayMember = "txtShortDesc".ToString();
//数据显示
int count = checkedListBox1.Items.Count;
for (int i = 0; i < count; i++)
{
if (checkedListBox1.GetItemChecked(i))
{
MessageBox.Show(checkedListBox1.Items[i].ToString());
}
}
//DataGrid中全选
foreach (DataGridItem thisItem in DataGridLogininfo.Items)
{
((CheckBox)thisItem.Cells[0].Controls[1]).Checked = CheckBox2.Checked;
}
//反向选择
for (int i = 0; i < checkedListBox1.Items.Count; i++)
{
if (checkedListBox1.GetItemChecked(i))
{
checkedListBox1.SetItemChecked(i, false);
}
else
{
checkedListBox1.SetItemChecked(i, true);
}
}
改变成类通用
#region 取复选框的值
/// <summary>
/// 取复选框的值
/// </summary>
/// <param name="ID">保存复选框的Value</param>
/// <param name="Name">保存复选框的Text</param>
/// <param name="CheckBoxListID">复选框ID</param>
protected void SaveCheckBoxList(TextBox ID, TextBox Name, CheckBoxList CheckBoxListID)
{
string mID = string.Empty;
string mName = string.Empty;
for (int i = 0; i < CheckBoxListID.Items.Count; i++)//读取CheckBoxList 选中的值,保存起来
{
if (CheckBoxListID.Items[i].Selected)
{
mID += CheckBoxListID.Items[i].Value + "★";
mName += CheckBoxListID.Items[i].Text + ",";
}
}
if (!string.IsNullOrEmpty(mID))
{
ID.Text = mID.Substring(0, mID.Length - 1);
Name.Text = mName.Substring(0, mName.Length - 1);
}
else
{
ID.Text = mID+"空";
Name.Text = mName;
}
}
#endregion