我是一个希望通过实践学习的新手 - 我正在编写一个小型的Windows窗体应用程序,它将根据下拉框中的选择显示各种文本输出
我已经搜索了如何做到这一点,但到目前为止我还没有找到答案。我只是希望IOPS.text值显示在文本框中,基于从组合框中选择的值
到目前为止我所拥有的是:
private void comboBox1_SelectedIndexChanged_1(object sender, EventArgs e)
{
//Insert values for block size
{
comboBox1.SelectedValue = ("4Kb");
ShowIOPS.Text = ("4096");
}
{ comboBox1.SelectedValue = ("8Kb");
ShowIOPS.Text = ("8192");
}
{
comboBox1.SelectedValue = ("16Kb");
ShowIOPS.Text = ("16384");
}
{
comboBox1.SelectedValue = ("32Kb");
ShowIOPS.Text = ("32768");
}
{ comboBox1.SelectedValue = ("64Kb");
ShowIOPS.Text = ("65536"); }
现在发生的事情是,无论选择什么组合框值,它都会在文本框中显示botom iops.text值
我确信我错过了一些非常简单明了的内容,但是非常感谢任何帮助!
答案 0 :(得分:0)
您的代码始终在文本框中显示底部iops.text值的原因是因为您未提供要使用的程序选择。它目前只是遍历每个语句并覆盖它直到最后一个iops.text被选中。你需要使用if语句或下面的switch语句,这告诉程序根据选择使用iops.text的内容:
private void comboBox1_SelectedIndexChanged_1(object sender, EventArgs e)
{
//Insert values for block size
Switch (comboBox1.SelectedValue)
{
case "4Kb":
ShowIOPS.Text = ("4096");
break;
case "8Kb":
ShowIOPS.Text = ("8192");
break;
case "16Kb":
ShowIOPS.Text = ("16384");
break;
case "32Kb":
ShowIOPS.Text = ("32768");
break;
case "64Kb":
ShowIOPS.Text = ("65536");
break;
default:
//some error check if none of the above was selected
break;
}
答案 1 :(得分:0)
尝试这样......
if (comboBox1.SelectedItem.ToString() == "4Kb")
{
ShowIOPS.Text = ("4096");
}
else if (comboBox1.SelectedItem.ToString() == "8Kb")
{
ShowIOPS.Text = ("8192");
}
else if (comboBox1.SelectedItem.ToString() == "16Kb")
{
ShowIOPS.Text = ("16384");
}
else if (comboBox1.SelectedItem.ToString() == "32Kb")
{
ShowIOPS.Text = ("32768");
}
else
{
ShowIOPS.Text = ("65536");
}