文本框将字母转换为数字

时间:2018-11-06 10:33:36

标签: c#

问题是我无法在文本框中输入字母(例如)。它不会将a,b之类的字母转换为数字,所以它不起作用我可以使用什么功能?检查代码:

try
{                
    if (Convert.ToInt32(textBox1.Text) + Convert.ToInt32(textBox2.Text) + Convert.ToInt32(textBox3.Text) + Convert.ToInt32(textBox4.Text) == 100)
        MessageBox.Show("Activated");
    else
        MessageBox.Show("License key is not valid.", "License key is not valid.", MessageBoxButtons.OK, MessageBoxIcon.Stop);
}
catch (System.FormatException ex)
{
    MessageBox.Show(ex.Message);
}

问题是我无法在文本框中输入像这样的字母。

2 个答案:

答案 0 :(得分:1)

如果要解析十六进制数字,请指定数字样式,例如:

int.Parse("10026AB0", NumberStyles.AllowHexSpecifier)

bool valid = Int32.TryParse("10026AB0", NumberStyles.AllowHexSpecifier,null, out var number1);

答案 1 :(得分:0)

尝试使用Int32.TryParse(string s,out int result);而不只是转换。 返回的布尔值将告诉您转换是否成功。

https://docs.microsoft.com/en-us/dotnet/api/system.int32.tryparse?view=netframework-4.7.2

AS