我要在编辑框里填入大于0小于1的实数时,显示的效果为0.0001.就是保留有效数值为4位,如果填入的是大于1的整数时就保留两位有效值。不知道大家有没有遇到过这样的问题?在线等!

解决方案 »

  1.   

    设数字为s
    if(s>0||s<1){s.ToString("#0.0000");}if(s>1){s.ToString("#0.00");}
      

  2.   

    晕decimal s = 3.1415926;
    if(s>0||s <1){s.ToString("#0.0000");}if(s>1){s.ToString("#0.00");}
      

  3.   

    o sorrydecimal s = 3.1415926;
    if(s>0&&s <1){s.ToString("#0.0000");}if(s>1){s.ToString("#0.00");}
      

  4.   


    主要是格式化数字。
    object.ToString()里面参数有很多个
    而且很有用,
    详细去baidu吧
      

  5.   


            private void textBox1_TextChanged(object sender, EventArgs e)
            {
                Decimal s = Convert.ToDecimal(textBox1.Text.ToString().Trim());
                if (s > 0 && s < 1)
                {
                    s.ToString("#0.0000");
                }
                if (s > 1)
                {
                    s.ToString("#0.00");
                }
                textBox2.Text = Convert.ToString(s);
            }
      

  6.   

    private void textBox1_TextChanged(object sender, EventArgs e)
            {
                Decimal s = Convert.ToDecimal(textBox1.Text.ToString().Trim());
                if (s > 0 && s < 1)
                {
                    s = s.ToString("#0.0000");            }
                if (s > 1)
                {
                    s= s.ToString("#0.00");            }
                textBox2.Text = Convert.ToString(s);
            }
      

  7.   

    sorry 
    private void textBox1_TextChanged(object sender, EventArgs e) 
            { 
                string temp;
                Decimal s = Convert.ToDecimal(textBox1.Text.ToString().Trim()); 
                if (s > 0 && s < 1) 
                { 
                    temp = s.ToString("#0.0000");            } 
                if (s > 1) 
                { 
                    temp= s.ToString("#0.00");            } 
                textBox2.Text = Convert.ToString(temp); 
            }
      

  8.   

    ....
    复杂了....            string temp = null; 
                Decimal s = Convert.ToDecimal(textBox1.Text.ToString().Trim()); 
                if (s > 0 && s < 1) 
                { 
                    temp = s.ToString("#0.0000"); 
                } 
                if (s > 1) 
                { 
                    temp = s.ToString("#0.00"); 
                } 
                textBox2.Text = temp;
      

  9.   

    为什么不用 if else ?
      

  10.   

    问题已经解决,谢谢大家参与,结贴了! private void textBox1_TextChanged(object sender, EventArgs e)
            {
                if (textBox1.Text=="")
                {
                    textBox2.Text = textBox1.Text;
                }
                else
                {
                    try
                    {
                        Single s = Convert.ToSingle(textBox1.Text);
                        if (s > 0 && s < 1)
                        {                        textBox2.Text = string.Format("{0:0.0000}", s);
                        }
                        if (s >= 1)
                        {                        textBox2.Text = string.Format("{0:f}", s);
                        }
                    }
                    catch (System.Exception ex)
                    {
                        MessageBox.Show(ex.Message);                }
                    finally
                    {
                    }
                }
                
               
            }
      

  11.   

     decimal de = 1.101010M;
                if ((0 < de) && (1 > de))
                {
                    this.textBox1.Text = de.ToString("#0.0000");            }
                else if (1 < de)
                {
                    this.textBox1.Text = de.ToString("#0.00");
                }