将CheckedListBox选定项检索为字典

时间:2015-08-04 20:51:39

标签: c# dictionary checkedlistbox

我的表单上有一个checkedlistbox,我使用Dictionary填充。当我填充框时它工作正常,但当我尝试检索所选对象时,我无法弄清楚如何将其作为字典。

我的代码填充它:

reader = widgetSelection.ExecuteReader();
while (reader.Read())
{
 widgets.Add(reader.GetInt32(0), reader.GetString(reader.GetOrdinal("name")));
}

foreach (var widget in widgets)
{
    chbWidgets.Items.Add(widget);
}

它完全填充,但任何做foreach或其他任何东西的尝试只会作为对象返回,我无法找出投射项目的正确方法。任何帮助都会很棒。

1 个答案:

答案 0 :(得分:1)

如果您的示例中的widgetsDictionary<int, string>,则chbWidgets.Items.Add(widget)正在向KeyValuePair<int, string>集合添加Items。要获取所选项目,您可以使用chbWidgets.CheckedItems.Cast<KeyValuePair<int, string>>()