给你一个函数
public bool IsNumeric(string s)
{
double resNum; bool isNum = Double.TryParse(s, NumberStyles.Float, NumberFormatInfo.InvariantInfo, out resNum ); return isNum;
}

解决方案 »

  1.   

    看不懂,这个函数是什么意思,它可以实现判断数值的作用吗?
    比如字符串"aaa"不是数值返回false,"1234"是数值返回true
      

  2.   

    如果不是数值就返回false,是数值的话返回true;
    你用的时候之间调用这个就行了
      

  3.   

    1、使用正则表达式:
        using System.Text.RegularExpressions;    Regex digitregex = new Regex(@"^[0-9]\d*[.]?\d*$");
        if (!digitregex.IsMatch(string)
    {

    MessageBox.Show("只能输入数字!","提示");
    }
        else
    {
               .......
             }2、使用char.IsNumber()函数,具体使用可以参考MSDN
      

  4.   

    public static bool IsNumeric(object Expression)
    { bool flag1;
    IConvertible convertible1;
    TypeCode code1;
    double num1;
    long num2;
    string text1;
    convertible1 = null;
    if ((Expression as IConvertible) != null)
    {
     convertible1 = ((IConvertible) Expression);
     
    }
    if (convertible1 == null)
    {
     if ((Expression as char[]) != null)
    {
     Expression = new string(((char[]) Expression));
     
    }
    else
    { return false; 
    }
     
    }
    code1 = convertible1.GetTypeCode();
    if ((code1 == 18) || (code1 == 4))
    {
     text1 = convertible1.ToString(null);
    try
    {
     if (StringType.IsHexOrOctValue(text1, &(num2)))
    {
     flag1 = true;
    return flag1; 
     
    }
     
    }
    catch (Exception)
    {
     flag1 = false;
    return flag1; 
     
    }
    return DoubleType.TryParse(text1, &(num1)); 
    }
    return Utils.IsNumericTypeCode(code1); 
     

      

  5.   

    jackyoung02(冷雨夜):    using System.Text.RegularExpressions;
        Regex digitregex = new Regex(@"^[0-9]\d*[.]?\d*$");
        if (!digitregex.IsMatch(string)
    MessageBox.Show("只能输入数字!","提示");
        else 
              .......
    感觉还是这段程序最好用一点,我想知道
    Regex digitregex = new Regex(@"^[0-9]\d*[.]?\d*$");这句话中的字符串部分是什么意思,可以解释一下吗?
      

  6.   

    using System.Globalization;
    private void textBox1_TextChanged(object sender, System.EventArgs e)
    {
    double ldb_Num;
    if (Double.TryParse(textBox1.Text, NumberStyles.Float, NumberFormatInfo.InvariantInfo, out ldb_Num ) == false)
    {
    MessageBox.Show("请输入数值型数据,如果1,33,4.16等。");
    textBox1.SelectionStart = 0;
    textBox1.SelectionLength = textBox1.TextLength;
    }
    }
    这个程序没问题,相信你可以从中得到你所想要的东西。
      

  7.   

    正则表达式语法,参见
    ms-help://MS.MSDNQTR.2003FEB.2052/jscript7/html/jsjsgrpregexpsyntax.htm