簡體   English   中英

文本框將字母轉換為數字

[英]Textbox convert letters to number

問題是我無法在文本框中輸入字母(例如)。 它不會將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);
}

問題是我無法在文本框中輸入字母(例如)。

如果要解析十六進制數字,請指定數字樣式,例如:

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

要么

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

嘗試使用Int32.TryParse(string s,out int result); 而不只是轉換。 返回的布爾值將顯示轉換是否成功。

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

int number1, number2, number3, number4;

if (Int32.TryParse(textBox1.Text, out number1) && Int32.TryParse(textBox2.Text, out number2) &&
    Int32.TryParse(textBox3.Text, out number3) && Int32.TryParse(textBox4.Text, out number4))
{
    if(number1 + number2 + number3 + number4 == 100)
        MessageBox.Show("Activated");
    else
        MessageBox.Show("License key is not valid.", "License key is not valid.", MessageBoxButtons.OK, MessageBoxIcon.Stop);
}
else
    MessageBox.Show("No letters allowed in the textboxes.", "No letters allowed in the textboxes", MessageBoxButtons.OK, MessageBoxIcon.Stop);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM