C# 为什么无法在Windows 8 Phone应用程序模拟器中将输入值转换为数字类型?

C# 为什么无法在Windows 8 Phone应用程序模拟器中将输入值转换为数字类型?,c#,windows-phone-8,C#,Windows Phone 8,我对Windows Phone开发非常陌生。现在我正在做我的第一个教程。问题是我无法将Windows Phone emulator的输入值强制转换为数字。我的代码如下: 按钮单击事件中的我的代码: int first_num = Convert.ToInt32(firstNumTxt.Text); int sec_num = Convert.ToInt32(secNumTxt.Text); if(first_num==sec_num) { resultLabel.Text = "Num

我对Windows Phone开发非常陌生。现在我正在做我的第一个教程。问题是我无法将Windows Phone emulator的输入值强制转换为数字。我的代码如下:

按钮单击事件中的我的代码:

int first_num = Convert.ToInt32(firstNumTxt.Text);
int sec_num = Convert.ToInt32(secNumTxt.Text);
if(first_num==sec_num)
{
     resultLabel.Text = "Numbers are equal";
}
else
{
     resultLabel.Text = "Numbers are not equal";
}

我有ASP.NET C#Web开发的经验。每当我像这样输入cast时,它都会抛出类型转换异常。如何将其转换为整数?

尝试使用
int.TryParse(…)
而不是
convert
,因为这将允许您在转换失败时进行检测

下面的示例向您展示了这是如何工作的:

int first_num;
int sec_num;

if (int.TryParse(firstNumTxt.Text, out first_num))
{
    if (int.TryParse(secNumTxt.Text, out sec_num))
    {
        if(first_num==sec_num)
        {
             resultLabel.Text = "Numbers are equal";
        }
        else
        {
             resultLabel.Text = "Numbers are not equal";
        }
    }
    else
        resultLabel.Text = "Second number not valid";
}
else
    resultLabel.Text = "First number not valid";

尝试使用
int.TryParse(…)
而不是
Convert
,因为这将允许您在转换失败时进行检测

下面的示例向您展示了这是如何工作的:

int first_num;
int sec_num;

if (int.TryParse(firstNumTxt.Text, out first_num))
{
    if (int.TryParse(secNumTxt.Text, out sec_num))
    {
        if(first_num==sec_num)
        {
             resultLabel.Text = "Numbers are equal";
        }
        else
        {
             resultLabel.Text = "Numbers are not equal";
        }
    }
    else
        resultLabel.Text = "Second number not valid";
}
else
    resultLabel.Text = "First number not valid";

尝试使用
int.TryParse(…)
而不是
Convert
,因为这将允许您在转换失败时进行检测

下面的示例向您展示了这是如何工作的:

int first_num;
int sec_num;

if (int.TryParse(firstNumTxt.Text, out first_num))
{
    if (int.TryParse(secNumTxt.Text, out sec_num))
    {
        if(first_num==sec_num)
        {
             resultLabel.Text = "Numbers are equal";
        }
        else
        {
             resultLabel.Text = "Numbers are not equal";
        }
    }
    else
        resultLabel.Text = "Second number not valid";
}
else
    resultLabel.Text = "First number not valid";

尝试使用
int.TryParse(…)
而不是
Convert
,因为这将允许您在转换失败时进行检测

下面的示例向您展示了这是如何工作的:

int first_num;
int sec_num;

if (int.TryParse(firstNumTxt.Text, out first_num))
{
    if (int.TryParse(secNumTxt.Text, out sec_num))
    {
        if(first_num==sec_num)
        {
             resultLabel.Text = "Numbers are equal";
        }
        else
        {
             resultLabel.Text = "Numbers are not equal";
        }
    }
    else
        resultLabel.Text = "Second number not valid";
}
else
    resultLabel.Text = "First number not valid";

您甚至还没有显示您试图解析的值,那么我们该如何帮助您呢?将断点放在第1行和第2行,查看
.Text
属性的值是什么,它应该为您指明正确的方向对于文本框1,我键入了3,对于文本框2,我键入了9。没有空格。请尝试使用
int.TryParse(…)
而不是直接的
转换,因为这样您就可以检测类型转换失败的时间。我在ASP.NET C#Web开发方面有经验,但您没有调试它?您甚至还没有显示您试图解析的值,那么我们该如何帮助呢?将断点放在第1行和第2行,看看
.Text
属性的值是什么,它应该为您指明正确的方向。对于文本框1,我键入了3,对于文本框2,我键入了9。没有空格。请尝试使用
int.TryParse(…)
而不是直接的
转换,因为这样您就可以检测类型转换失败的时间。我在ASP.NET C#Web开发方面有经验,但您没有调试它?您甚至还没有显示您试图解析的值,那么我们该如何帮助呢?将断点放在第1行和第2行,看看
.Text
属性的值是什么,它应该为您指明正确的方向。对于文本框1,我键入了3,对于文本框2,我键入了9。没有空格。请尝试使用
int.TryParse(…)
而不是直接的
转换,因为这样您就可以检测类型转换失败的时间。我在ASP.NET C#Web开发方面有经验,但您没有调试它?您甚至还没有显示您试图解析的值,那么我们该如何帮助呢?将断点放在第1行和第2行,看看
.Text
属性的值是什么,它应该为您指明正确的方向。对于文本框1,我键入了3,对于文本框2,我键入了9。没有空格。请尝试使用
int.TryParse(…)
而不是直接的
转换
,这样您就可以检测类型转换失败的时间。我在ASP.NET C#Web开发方面很有经验,但您没有对此进行调试吗?