C# 如何根据WinForm中的子复选框列表选择主复选框列表
我有一个复选框列表,其中包含一些项目,如C# 如何根据WinForm中的子复选框列表选择主复选框列表,c#,winforms,devexpress,checkboxlist,C#,Winforms,Devexpress,Checkboxlist,我有一个复选框列表,其中包含一些项目,如 一百 100.001 100.002 100.003 二百 200.001 200.002 200.003 这些项目之间有关系。父项为100和200 100.001、100.002和100.003是100岁的孩子。同样的,项目以200开头 假设所有项目都未选中,例如,当用户选择100.002时,我需要自动选择100的父项 没有循环的好方法是什么 这是我的密码 private void clb_SelectedIndexChanged(object
- 一百
- 100.001
- 100.002
- 100.003
- 二百
- 200.001
- 200.002
- 200.003
private void clb_SelectedIndexChanged(object sender, EventArgs e)
{
int selected = clb.SelectedIndex;
// I need to get the selected item's Text
// then I have to split it with
// string s = item.Text.Split('.')
clb.SetItemChecked(clb.FindStringExact(s[0]), true);
}
上面的代码我几乎完成了,但是我无法获取最后一个选定项的文本似乎您使用了错误的控件,鉴于您的数据是基于树的结构,您应该使用树状视图而不是复选框列表。这两者都为您的用户提供了一个更合理的UI,并使您在代码中更容易获取节点的“父节点”或给定节点的子节点。我猜您的
复选框列表
有一些项
属性,您可以使用项[selected]
,或者它应该有一些名为SelectedItem
的属性。看起来它是一个DevExpress
控件?但我需要用户选择/检查项目…它是DevExpresscontrol@ayilmaz所以,寻找我建议的属性,我以前使用过一些DevExpress控件,但这是很久以前的事了。