0

我站在十字路口,怀疑哪条路是正确的路。正如大家所看到的图像 Groupbox 和 CheckBoxes 都是动态创建的。我感到困惑的是,如果用户从 XII2013SIF01 中选择 Sun Tue 和 Fri 并从 XII2013SIG02 中选择 Mon Tue Wed 和 Thr,我如何将这些复选框值传递给按钮单击时的步骤 3 表单。在第 3 步表格中,我需要通过他们的组名称来识别日期,因为根据该处理将完成。哪种技术最适合我,请提供一些指导/建议或建议。

在此处输入图像描述

4

1 回答 1

0

最好的方法是创建一个包含在此步骤(或整个步骤序列)中收集的数据的类。在那个类上,这个特定的选项列表可以表示HashSet<DayOfWeek>为每个部分的属性。

每个步骤的类示例:

public class Step2Selection {
   public Step2Selection() {
      XII2013SIF01 = new HashSet<DayOfWeek>();
      XII2013SIG02 = new HashSet<DayOfWeek>();
   }

   public HashSet<DayOfWeek> XII2013SIF01 { get; private set; }
   public HashSet<DayOfWeek> XII2013SIG02 { get; private set; }
}

或者,如果部分的数量可以增加,您可以使用字典或自定义部分类的列表。

对于您的特定情况,您还可以使用没有自定义类的字典:

IDictionary<string, HashSet<DayOfWeek>> // where dictionary keys are "XII2013SIF01", etc

尽管它不能很好地扩展任何额外的复杂性。

于 2013-05-14T06:17:53.317 回答