【问题标题】:How to check if/else statement for multiple textboxes and variables?如何检查多个文本框和变量的 if/else 语句?
【发布时间】:2019-02-02 16:02:08
【问题描述】:

我有一个带有 5 个文本框的 Windows 窗体。在这些文本框中,用户可以填写 3 个值(500,555 或 610)。每个值都需要乘以一个常数。对于每个值,都有另一个常数。下面是我的一个文本框(txtSectie1)的代码。

我认为有一种方法可以使用循环,而不是复制这段代码 5 次(对于每个文本框),所以我不必复制代码 4 次,但我想不通。对于 5 个文本框中的每一个,我想将一个值存储在一个变量中(dblGewichtPaneel1 到 dblGewichtPaneel5)。所有的文本框和变量都具有相同的名称,只有最后一个字符从 1 变为 5。

【问题讨论】:

  • 解决此类问题的常用方法是将数据放入关联数组并使用循环。那么你只需要一个if 语句。 (好吧,在你的情况下可能有两个)。
  • 感谢罗伯特的回答。您是否有指向我可以学习如何创建关联数组的页面的链接?我只是一个初学者...谢谢!
  • 关联数组只是一种数据结构,可以保存键/值对并允许您对其进行迭代。排序字典会做得很好。

标签: c# winforms


【解决方案1】:

解决方案 1:

  1. 将整个代码放入一个接受 TextBox 和 Panel 作为输入参数的方法中。
  2. 将所有文本框和面板放在一个列表中,然后在列表上运行一个循环,重复调用第 1 点中创建的方法。

解决方案 2:

  1. 运行循环 1 到 5,包装上面的代码。
  2. 使用查找控件

    Textbox control = (TextBox) this.Controls["txtSectie" + i]; //this being Form or container control
    if(control!=null)
    {
        //do work
    }
    

【讨论】:

    猜你喜欢
    • 2020-10-29
    • 1970-01-01
    • 2018-01-24
    • 2021-02-14
    • 1970-01-01
    • 2014-03-05
    • 1970-01-01
    • 1970-01-01
    • 2023-02-06
    相关资源
    最近更新 更多