2

我正在尝试使用数字 updown 在一个数组中来回移动,该数组存储用户进行的打字测试的分数。老实说,我什至不知道从哪里开始。我写了一些代码,但它似乎没有做任何事情。

    private void testUpDown_ValueChanged(object sender, EventArgs e)
    {
        foreach (testUpDown.Value = allTests[i])
        {
            prevErrorsBox = Errors.ToString();
            prevWpmBox = WPM.ToString();
        }
    }

正如您可以想象的那样,它并没有做很多事情。我应该为此使用不同的控件吗?如果重要的话,这是通过 3 层设计完成的。我还必须让这个表单从数据库中加载值。

提前感谢您的帮助。

4

1 回答 1

1

您需要使用向上/向下控件更改数组的索引,确保您不能超出数组的边界。看看这样的东西是否适合你。

public partial class Form1 : Form
{
    string[] values;
    public Form1()
    {
        InitializeComponent();
        values = setValueArray();
        numericUpDown1.Maximum = values.Length - 1;
        numericUpDown1.Minimum = 0;
    }

    private string[] setValueArray()
    {
     return new string[] { "100", "90", "80", "70", "60" };
    }

    private void numericUpDown1_ValueChanged(object sender, EventArgs e)
    {
        label1.Text = values[(int)((NumericUpDown)sender).Value];
    }
}
于 2012-11-25T06:05:41.540 回答