0

我是 C# 新手,我有一个问题,我找不到其他问题。我创建了一个这样的组合框:

ComboBox lijst = new ComboBox();

我还添加了一些项目和位置:

lijst.Location = new Point(400, 25);

lijst.Text = "Basis";
lijst.Items.Add("Basis");
lijst.Items.Add("Zuilen");
lijst.Items.Add("Vuur");
lijst.Items.Add("Zigzag");

问题是您现在可以选择一个项目并按下触发下一个方法的按钮。

private void bereken(object sender, System.EventArgs e)
{
    string nr = Convert.ToString(lijst.SelectedIndex);

    Label tekstuitvoer = new Label();
    tekstuitvoer.Location = new Point(100, 100);
    tekstuitvoer.Size = new Size(70, 20);
    tekstuitvoer.Text = nr;

    this.Controls.Add(tekstuitvoer);
}

但这是我的问题。按下按钮后, tekstuitover.Text 的结果将始终相同。因此,如果您在选择“Vuur”时按下按钮,则结果将始终为 2。之后更改组合框项目无关紧要。输出将始终为 2。但是当我重新启动程序并选择第四个选项而不是第三个时,现在结果始终为 3。

你能帮我解决这个问题吗?有没有办法重置字符串 nr?

提前致谢。我希望你们能帮助我!

4

1 回答 1

1

我花了一段时间才弄清楚你在说什么。将SelectedIndexChanged事件处理程序添加到您的组合框,并从那里触发您的标签代码,您可以摆脱按钮。

但是,就目前情况而言,您将在每次更改时创建一个新的标签组件。更简单的是在设计时添加一个并在事件中设置文本属性。

于 2012-09-22T11:26:12.150 回答