不能隐式转换类型'string'& # 39; int # 39;其中输入可以是数字或字母数字

本文关键字:数字 输入 string 转换 不能 int 类型 | 更新日期: 2023-09-27 17:50:14

我试图使一个遮罩文本框,已经设置了部分值,然后用户需要输入4个数字,然后允许它发送出去。我很难解释,但这里是它目前的样子供参考:

private void maskedTextBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if(e.KeyCode == Keys.Enter && maskedTextBox1.Text.Length == ("007744D4 0131").Length + 4)
        {
            NCInterface.ConstCodeAdd(codes[maskedTextBox1.Text], true);
        }
    }

现在它有NCInterface的最后一部分,是它被发送到PS3控制台的地方,我需要知道如何确保maskedTextBox1.Text正确转换。maskedTextBox需要能够接受数字和字母。我没有什么可与之相比的。但那只是它发出的地方。但它只是说它不能将字符串类型转换为整型。如果有人能帮我一把,我将不胜感激。

不能隐式转换类型'string'& # 39; int # 39;其中输入可以是数字或字母数字

根据你的错误,你可以这样做:

NCInterface.ConstCodeAdd(int.Parse(codes[maskedTextBox1.Text]), true);

你需要做的是使用TryParse

string testString = maskedTextBox1.Text;
int numberTest;
if(int.TryParse(testString, out numberTest)
{
      NCInterface.ConstCodeAdd(numberTest, true); 
}