0
我有一个应用程序有一个主窗体,其中有10个按钮是用户可配置的。 我有另一种形式来配置这10个按钮操作。从另一种形式配置一个窗体上的按钮
配置这10个按钮的最佳方式是什么? 目前,我将10个按钮作为List传递给第二个窗体,并将它们链接到相应的组合框标签。 问题是如果将来有时我决定添加一个按钮或重新排列它们,我将不得不重写代码。任何人都知道更好的方法?
private readonly List<PictureBox> pictureBoxes;
private readonly List<ComboBox> comboBoxes;
public Shortcut_Buttons (List<string> stringsList, List<Button> sButtons)
{
InitializeComponent();
pictureBoxes = Controls.OfType<PictureBox>().ToList();
comboBoxes = Controls.OfType<ComboBox>().ToList();
if (pictureBoxes.Count != sButtons.Count)
throw new ArgumentException("Not enough Buttons/Pictureboxes.");
int i = 0;
foreach (var pictureBox in pictureBoxes)
{
pictureBox.BackgroundImage = sButtons[i++].BackgroundImage;
}
i = 0;
foreach (var comboBox in comboBoxes)
{
comboBox.DataSource = stringsList;
comboBox.Tag = sButtons[i++];
comboBox.SelectedIndexChanged += SetShortcutButton;
}
}
我宁愿不夫妇形式,如果我能避免它,毕竟我也可以直接将主表单传递给辅助表单并让它处理。 – HellSpam 2011-02-24 11:58:22