我有一个复选框列表和列表视图。我不想在列表视图中显示复选框列表中的选定值。对于前。我选择三个项目,然后单击确定按钮,然后这三个项目将显示在列表视图中,如果我将其更改为选择四个项目而不是三个项目,那么它将显示四个项目。
我是这方面的新手,所以请帮助我。
谢谢
我有一个复选框列表和列表视图。我不想在列表视图中显示复选框列表中的选定值。对于前。我选择三个项目,然后单击确定按钮,然后这三个项目将显示在列表视图中,如果我将其更改为选择四个项目而不是三个项目,那么它将显示四个项目。
我是这方面的新手,所以请帮助我。
谢谢
像这样试试
Html 设计器页面
<asp:CheckBoxList
ID="CheckBoxList1"
runat="server"
RepeatColumns="2"
>
<asp:ListItem>SqlDataSource</asp:ListItem>
<asp:ListItem>XmlDataSource</asp:ListItem>
<asp:ListItem>AccessDataSource</asp:ListItem>
</asp:CheckBoxList>
<asp:Button
ID="Button1"
runat="server"
Text="Add Item"
Font-Bold="true"
ForeColor="SteelBlue" onclick="Button1_Click"
/>
<asp:ListView ID="listview1" runat="server">
<LayoutTemplate>
<table runat="server" id="table1" >
<tr runat="server" id="itemPlaceholder" ></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr id="Tr1" runat="server">
<td id="Td1" runat="server">
<%-- Data-bound content. --%>
<asp:Label ID="NameLabel" runat="server"
Text='<%#Eval("Name") %>' />
</td>
</tr>
</ItemTemplate>
</asp:ListView>
代码隐藏
protected void Button1_Click(object sender, EventArgs e)
{
List<ListItem> Citems = CheckBoxList1.Items.Cast<ListItem>().Where(n => n.Selected).ToList();
DataSet dt = new DataSet();
DataTable table1 = new DataTable();
table1.Columns.Add("Name");
if (Citems.Count() != 0)
{
for(int i=0;i<Citems.Count();i++)
{
table1.Rows.Add(Citems[i].Text);
}
dt.Tables.Add(table1);
listview1.DataSource = dt;
listview1.DataBind();
}
}