我有一个CheckBoxList,其中装有数据。当我尝试从列表中检索选中的项目时,我只能按顺序抓取该项目,而无法获取该值。

我读过您可以使用Items [i] .Value,但是当我尝试执行此操作时,我收到一条错误消息,指出没有扩展方法'value'。

这是我用来尝试获取信息的代码(请注意,GetItemText(i)实际上只给了我项目的位置,而不是项目的文本)

   private void btnGO_Click(object sender, EventArgs e)
{
    for (int i = 0; i < chBoxListTables.Items.Count; i++)
    {
        if (chBoxListTables.GetItemChecked(i))
        {
            string str = chBoxListTables.GetItemText(i);
            MessageBox.Show(str);

            //next line invalid extension method
            chBoxListTables.Items[i].value;
        }
    }
}

这是使用.Net 4.0

任何想法将不胜感激...谢谢

最佳答案

最终变得非常简单。 chBoxListTables.Item [i]是一个字符串值,并且通过显式转换将其加载到变量中。
以下代码有效:

private void btnGO_Click(object sender, EventArgs e)
{
    for (int i = 0; i < chBoxListTables.Items.Count; i++)
    {
          if (chBoxListTables.GetItemChecked(i))
        {
            string str = (string)chBoxListTables.Items[i];
            MessageBox.Show(str);
        }
    }
}

10-07 23:08