c# - 循环遍历 C# 文本框
问题描述
我试图让用户输入加倍到 4 个不同的文本框。然后,一旦用户单击计算按钮,将发生以下情况:
- foreach 循环运行,将 textbox.Texts 解析为双精度,然后将它们添加到列表中
- for 循环在列表中运行和索引,将它们全部加起来。
- 上一步的列表项总和除以列表中值的数量,结果输入到另一个文本框中。
当我运行它时,没有发生错误,但结果没有显示在 texbox 中。为什么什么都没有显示?
private void CalculateButton_Click(object sender, EventArgs e)
{
double gpa = 0;
List<double> grades = new List<double>();
foreach(Control textBox in Controls)
{
if ((textBox.GetType().ToString() == "System.Windows.Form.Textbox") && (textBox.Name.Contains("gradeBox")))
{
grades.Add(double.Parse(textBox.Text));
}
}
for(int i =0; i<grades.Count; i++)
{
gpa += grades[i];
}
gpa /= grades.Count;
gpaBox.Text = gpa.ToString();
}
解决方案
看起来文本框的命名空间不太正确。它应该是 System.Windows.Form s .Text Box。注意“s”和大写“B”。以下是修正版。
private void CalculateButton_Click(object sender, EventArgs e)
{
double gpa = 0;
List<double> grades = new List<double>();
foreach (Control textBox in Controls)
{
if ((textBox.GetType().ToString() == "System.Windows.Forms.TextBox") && (textBox.Name.Contains("gradeBox")))
{
grades.Add(double.Parse(textBox.Text));
}
}
for (int i = 0; i < grades.Count; i++)
{
gpa += grades[i];
}
gpa /= grades.Count;
gpaBox.Text = gpa.ToString();
}
推荐阅读
- python - Flask API - 日期序列化错误......棉花糖是答案吗?
- filter - Dojo 如何按字段过滤数据网格!= 使用 Observable 和 Memory 的值
- bash - 使用 Mac 终端连接服务器
- node.js - ReactJs - 检索和下载 ZIP 文件,调用 api nodeJS 的结果
- python - 切换到 GPU 后 TF 模型不再预测
- html - 在 R/Rmarkdown 上使用多个 html 文件创建报告
- mongodb - mongodb:复杂的嵌套聚合
- php - Php - 使用 mysqli 中的 bind_params 更新列的变量数组
- process - 为什么会显示“ERROR:HDLCompiler:806 -”C:\Users\dell\Desktop\EE240\lab5\deniyoruz\eponentmunber.vhd” 第 26 行:“end”附近的语法错误
- javascript - Mongoose 一对多关系