CheckBoxList无法分配值

时间:2019-03-08 18:27:24

标签: c# asp.net

我有一个正在工作的asp.net项目。我的CheckBoxList控件是

<asp:CheckBoxList ID="p1" runat="server" CellSpacing="0" CellPadding="-1" RepeatColumns="4"></asp:CheckBoxList>

我的C#代码是

private static CheckBoxList ReturningValues()
{
    CheckBoxList myList = new CheckBoxList();

    string list = "25 28 32 41";
    string[] values = list.Split(' ');

    foreach (var checkbox in values)
    {
        myList.Items.Add(checkbox);
    }

    return myList;
}

我要做的就是将ReturningValues方法中的值分配给我的p1 CheckboxList。

p1.SelectedValue = ReturningValues().ToString();

但是当我分配返回值时,CheckboxList为空。我将如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

您不是要向已经存在的CheckBoxList p1添加值,而是要创建一个新值。我认为您想向p1添加复选框。这样做

private void ReturningValues()
{
    string list = "25 28 32 41";
    string[] values = list.Split(' ');

    //loop the values in the array
    foreach (var checkbox in values)
    {
        p1.Items.Add(new ListItem() { Text = checkbox, Value = checkbox });
    }

    //add items to p1
    p1.DataBind();
}

或更短的版本是将数组直接绑定为数据源。

int[] values = new int[] { 25, 28, 32, 41 };

p1.DataSource = values;
p1.DataBind();