如何在checkBoxes的基础上排序列表

时间:2011-04-04 07:34:25

标签: c# sorting

我想在检查的基础上对复选框列表进行排序,并且检查控件的未选中状态复选框将首先出现,未选中复选框将在列表中稍后出现。然后我将这个添加到面板。这怎么可能?

2 个答案:

答案 0 :(得分:1)

将CheckBox放在通用列表中并使用其Sort方法。

List<CheckBox> checkBoxes = GetCheckBoxes();

// Unchecked CheckBoxes first
checkBoxes.Sort((firstCheckBox, secondCheckBox) => return firstCheckBox.Checked ? +1 : -1);

// Checked CheckBoxes first
checkBoxes.Sort((firstCheckBox, secondCheckBox) => return firstCheckBox.Checked ? -1 : +1);

答案 1 :(得分:0)

您可以改为使用通用的复选框列表,并按如下方式对其进行排序:

List<CheckBox> ar;
        ar.Sort(c => c.Checked);

确保初始化列表...