在Textbox.Text

时间:2018-05-04 08:54:55

标签: c# winforms

我已完成当前项目,目前正在尝试改进代码本身。

在我开发的应用中,当用户点击“打印”按钮时,文本框中的不同文本会被验证是否为空或空?是数字吗?

我的问题是我最终得到像

这样的怪物代码行
if (!String.IsNullOrEmpty(textBoxNbPieces.Text) && !String.IsNullOrEmpty(textBoxNbLotTrempe.Text) && !int.TryParse(textBoxNbPieces.Text, out numero) && !int.TryParse(textBoxNbLotTrempe.Text, out numero))
        {
            if (int.Parse(textBoxNbPieces.Text) < int.Parse(textBoxNbLotTrempe.Text))
            {
                erreur++;
            }
        }

我怎么能避免这种情况?

1 个答案:

答案 0 :(得分:6)

你不需要检查IsNullOrEmptyint.TryParse,后者包括前者。

bool valid = int.TryParse(textBoxNbPieces.Text, out int pieces)
          && int.TryParse(textBoxNbLotTrempe.Text, out int trempe) 
          && pieces >= trempe;
if(!valid) erreur++;

[免责声明:C#7语法]

相关问题