当我将文本框保留为空时如何防止程序崩溃c#

阿缅·阿布·贝克(Ameen AbuBaker)
using System;    
using System.Collections.Generic;    
using System.ComponentModel;    
using System.Data;    
using System.Drawing;    
using System.Linq;    
using System.Text;    
using System.Windows.Forms;

namespace IP_HULK
{

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            int n1, n2, n3, n4;
            if (numbox1.Text == "" || numbox2.Text == "" || numbox3.Text == "" || numbox4.Text == "")
            {
                MessageBox.Show("el ip fadi");
            }
            n1 = Convert.ToInt16(numbox1.Text);
            n2 = Convert.ToInt16(numbox2.Text);
            n3 = Convert.ToInt16(numbox3.Text);
            n4 = Convert.ToInt16(numbox4.Text);
            if ((n1 > 0 && n1 < 255) && (n2 > -1 && n2 < 255) && (n3 > -1 && n3 < 255) && (n4 > -1 && n4 < 255))
                            MessageBox.Show("The IP is Valid");
                        else
                            MessageBox.Show("The ip isn't valid");
        }

        private void textBox1_TextChanged_1(object sender, EventArgs e)
        {

        }

        private void numbox1_Leave(object sender, EventArgs e)
        {

        }
    }
}
达伦

您将需要使用一条else语句。您的逻辑表明,如果文本框为空,请显示一条消息。一旦用户关闭MessageBox,您的程序将尝试转换Textbox值,无论它们是否为空。

举个例子:

    int n1, n2, n3, n4;
    if (numbox1.Text == "" || numbox2.Text == "" || numbox3.Text == "" || numbox4.Text == "")
    {
        MessageBox.Show("el ip fadi");
    }
    else 
    {
       n1 = Convert.ToInt16(numbox1.Text);
       n2 = Convert.ToInt16(numbox2.Text);
       n3 = Convert.ToInt16(numbox3.Text);
       n4 = Convert.ToInt16(numbox4.Text);
    }

但是,最好将其拆分为将为您执行验证的方法。另外要注意的是,可以使用int.TryParse而不是Convertstring.IsNullOrWhiteSpace并且可能更易读。

if (string.IsNullOrWhiteSpace(numbox1.Text)) 
{

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

C#如何防止文本框为空时按下Tab键

当我将页面调整为小屏幕时,标签控件与文本框重叠

当我尝试解析的文本框中未输入任何内容时,应用程序崩溃

当我检查ckeckbox时如何禁用文本框

如何使HTML文本框为空时显示提示?

文本框为空时如何重新聚焦

C#如何在第二个文本框中输入数字。每当我单击按钮时,它就会一直出现在第一个文本框中

当文本框值为空时,使用 C# 停止在表中插入空值日期

单击文本框时如何擦除或隐藏文本框文本?C#

我如何将文本框值分配给 Oracle SQL 查询 C#

我如何将void转移到文本框?C#

如何防止在'mscorlib.dll'中出现'System.FormatException'且文本框为空?

当我将鼠标悬停在文本框中时显示日历

当我尝试将结构中的char *类型的元素设置为特定字符串时,C程序崩溃?

如何使用for循环在c#windows窗体应用程序中检查文本框是否为空,使用数组

当我在文本框中单击时如何在wpf中启用弹出控件?

长度为0时如何防止用户在文本框中输入特殊字符?

如何验证文本框以防止传递空值?

当我从文本框中减去两个时间(移位时间)并在文本框中显示输出时,该值返回为未定义

如果文本框为空,如何使用错误提供程序实现多个捕获

文本框为空时,onkeyup不起作用

在文本框输入为空时显示警报

zk文本框值在拖放时为空

文本框为空时抛出错误

当其他文本框为空时禁用文本框

ms access-将光标在文本字段中的位置设置为仅在文本框为空时开始

仅当文本框为空时,如何进入此规则进行流畅的验证

当所需的文本框为空时,如何强制页面回发

重要输入文本框为空时如何生成错误