[英]How do I use a button to add 3 different scores into one textbox?
我为“得分”指定了一个文本框,为“得分”指定了另一个文本框。 除了这两个文本框,我还有一个名为“添加分数”的按钮。 分数文本框处理1个分数。 每次我单击添加分数按钮时,它都应在分数文本框中添加一个新分数。 例如,如果我输入“ 33”作为第一个分数并单击“添加分数”按钮,然后输入“ 45”并单击“添加分数”按钮,则分数文本框应显示“ 33,45”。 我想要3个分数,并且3个分数在分数文本框中分别显示为字符串。
到目前为止,我唯一的想法就是声明一个数组。
private void btnAddScore_Click(object sender, EventArgs e)
{
string name = txtName.Text;
int score = Convert.ToInt32(txtScore.Text);
int[] scores = new int[2];
}
我会建议您这种方法:
private void btnAddScore_Click(object sender, EventArgs e)
{
string scores = txtName.Text;
if(!string.IsNullOrEmpty(scores) && scores.Split(',').Count() == 3)
{
MessageBox.Show("You can't enter more than three scores");
return;
}
if (string.IsNullOrEmpty(scores))
{
scores += txtScore.Text;
}
else
{
scores += ", " + txtScore.Text;
}
txtName.Text = scores;
}
您可能希望事先创建数组,以便在单击按钮时可以使用它。 而不是在按钮处理程序内部创建一个。
使用数组,您可以使用字符串(逗号分隔)将scores数组中的所有分数显示出来:
string newString = string.empty;
foreach(int s in scores)
{
int n = 1, slen = scores.length;
if(n == 1 || n >= slen)
{ separator = ""; }
else
{ separator = ", ";}
newString = newString + separator + s.ToString();
n += 1;
}
还是静态的:
private void btnAddScore_Click(object sender, EventArgs e)
{
string name = txtName.Text;
if(Scores.length <= 3)
{
txtScores.Text = txtScores.Text.ToString() + ", " + txtScore.Text.ToString();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.