如何知道用户在运行时在文本框中输入的值的数据类型?
我的简单例子:
我试过用GetType()
,但没用,它总是显示System.String
,无论我输入int
还是String
。
如果用户在文本框中输入了文本,那总是一个字符串。它从来不是一个整数。您可以将文本解析为整数,但输入本身仍然是文本。
您可以推测性地尝试以不同的方式解析它:
int intValue;
if (int.TryParse(text, out intValue)
{
... use intValue, then return?
}
decimal decimalValue;
if (decimal.TryParse(text, out decimalValue)
{
... use decimalValue, then return?
}
但从根本上讲,您需要了解用户输入始终是一个字符串,以及如何使用该字符串取决于您自己。