我有一个CheckedListBox
绑定到一个DataTable
。现在我需要以编程方式检查一些项目,但我发现SetItemChecked(...)
方法仅接受项目索引。
有没有一种实用的方法可以在不知道项目索引的情况下通过文本/标签获取项目?
(注意:我对 WinForms 的经验有限......)
您可以实施自己的SetItemChecked(string item);
private void SetItemChecked(string item)
{
int index = GetItemIndex(item);
if (index < 0) return;
myCheckedListBox.SetItemChecked(index, true);
}
private int GetItemIndex(string item)
{
int index = 0;
foreach (object o in myCheckedListBox.Items)
{
if (item == o.ToString())
{
return index;
}
index++;
}
return -1;
}
checkListBox 使用object.ToString()
显示列表中的项目。您可以实现一个在所有对象中搜索的方法。ToString() 来获取项目索引。获得项目索引后,您可以调用SetItemChecked(int, bool);
希望能帮助到你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)