[英]Getting Two Added Values from A single Listbox c#
因此,在我的程序中,它应该能够根据学校系统解决我们的成绩。 我有两个文本框,一个按钮和一个列表框,当我按下按钮时,它将从文本框中获得两个不同的值并将其放在列表框中。 现在,我的问题是如何从这两个文本框中获得两个不同的求和值。 在我得到两个值之后,我只是将它们除以并得到我的答案,对不起我的英语不好,我也是这个编程的新手。
public MainWindow()
{
InitializeComponent();
listbox.Items.Add(string.Format("Unit\tGrade\tEquivalent"));
}
double grade = 0;
private void genbox_Click(object sender, RoutedEventArgs e)
{
double units = Convert.ToDouble(unitval.Text);
if (g.Text == "A" || g.Text=="a")
{
grade = 4;
}
else if (g.Text == "B+" || g.Text == "b+")
{
grade = 3.5;
}
else if (g.Text == "B" || g.Text == "b")
{
grade = 3;
}
else if (g.Text == "C+" || g.Text == "c+")
{
grade = 2.5;
}
else if (g.Text == "C" || g.Text == "c")
{
grade = 2;
}
else if (g.Text == "D" || g.Text == "d")
{
grade = 1;
}
else if (g.Text == "F" || g.Text == "f")
{
grade = 0;
}
else if (g.Text == "FD" || g.Text == "Fd" || g.Text == "fd" || g.Text == "fD")
{
grade = 0;
}
else
{
MessageBox.Show("Grade is not Determined");
return;
}
g.Clear();
unitval.Clear();
double equiv = units * grade;
listbox.Items.Add(units + "\t" + grade + "\t" + equiv );
double tunits =+ units;
double tequiv =+ equiv;
double qpival = tequiv / tunits;
qpi.Text = qpival.ToString();
}
似乎您缺少演员表:
listbox.Items.Add(units + "\t" + grade + "\t" + equiv );
单位,年级和等值被声明为double
这应该可以解决问题:
listbox.Items.Add(units.ToString() + "\t" + grade.ToString() + "\t" + equiv.ToString() );
编辑:
listbox.Items.Add(string.Format("Unit\tGrade\tEquivalent"));
String.Format不能那样工作,它应该是:
String.Format("{0}\t{1}\t{2}", parameter0, parameter1, parameter2);
这样您就可以将代码重新格式化为
listbox.Items.Add(String.Format("{0}\t{1}\t{2}", units.ToString(), grade.ToString(), equiv.ToString()));
更改:
if (g.Text == "F" || g.Text == "f")
对此:
if(g.Text.ToUpper().Equals("F"))
如果将所有更改为:
private int getGrade(string x)
{
if( .... ) { return ...; }
if( .... ) { return ...; }
}
也许您应该将ListBox更改为ListWiev,像表一样使用Listbox,可以在ListWiev中获取表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.