Double.TryParse() 字符串是否可以转化成double型数据//多个窗口传值问题

Double.TryParse() 用途:

1. 从文档读数据时,判断读到的内容(字符串)是不是可以用来计算的数据,如果是,则相当于执行了string to double,out 转换后的数据,返回值是bool型 ,true;如果不是,则返回false,没有 out

2. 用户输入一个double型数据,可用此函数来判断用户输入(.textbox.txt)的内容是否正确

public static bool TryParse (string s, out double result);

第一个参数是 需要被判断的字符串,第二个参数是 Out的double型变量A(需要在调用此函数前先申明一个double型变量A),返回值是BOOL型

例如:在Form1中点击GetData button ,在Form2中输入数字,如果输入的是double型则返回给form1,如果输入的不是double型,则报错

代码:

Form1

        Form2 fm2 = new Form2();//在Form1中调用Form2的变量一定要在Form1 中实例化Form2

        private void button_GetData_Click(object sender, EventArgs e)
        {


            //打开form2窗口
            fm2.ShowDialog();
            //从form2返回的数据要再次绑定给textBox1,不然数据不会更新
            if (fm2.t)
            this.textBox1.Text = Convert.ToString(fm2.doba);

        }

Form2

        public string stra;
        public bool t;//From2中需要被Form1调用的变量必须要定义为public,不然在form1中无法查询到并使用
       private void button1_Click(object sender, EventArgs e)
        {
            stra = this.textBox1.Text;


            if (this.textBox1.Text != null)
            {
                //判断输入的数据是否是double型
             //  bool success =  double.TryParse(stra, out doba);
                if (double.TryParse(stra, out doba))
                {
                    t = true;// 这里的doba是out的double型数字,如果要使用,得先在前面声明 double doba = 0
                }
                else
                {
                    MessageBox.Show("请输入整数或小数");
                    t = false;
                }
                
            }
            else
            {
                MessageBox.Show("请输入参数值");
                t = false;
            }
            this.Close();
        }

运行结果:

Form1

Form2

写入数字12 点击确定 返回给Form1

如果写入汉字 

报错 Form1 得不到返回的数据

docs

https://docs.microsoft.com/zh-cn/dotnet/api/system.double.tryparse?view=netframework-4.5&f1url=%3FappId%3DDev11IDEF1%26l%3DZH-CN%26k%3Dk(System.Double.TryParse);k(TryParse);k(TargetFrameworkMoniker-.NETFramework,Version%253Dv4.5);k(DevLang-csharp)%26rd%3Dtrue

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值