我得到异常“输入字符串格式不正确”。我想处理该异常并添加我自己的错误。输入应该是int。我应该在哪里这样做?我有一个带有listview的objectdatasource,我无法从后面的代码中获取textbox.text,所以我可以使用tryParse。
答案 0 :(得分:2)
您的媒体资源属于Int32类型。您不能为此属性分配除有效整数之外的任何内容。现在,如果您有一些字符串形式的用户输入,然后您需要将其分配给整数属性,您可以使用int.TryParse方法确保用户输入的值是有效整数。
例如:
string someValueEnteredByUser = ...
int value;
if (!int.TryParse(someValueEnteredByUser, out value))
{
// the value entered by the user is not a valid integer
}
else
{
// the value is a valid integer => you can use the value variable here
}
答案 1 :(得分:2)
Number
总是一个int
,它是这样定义的......
您可能想要验证字符串的内容。最简单的方法是将其解析为int
:
int number;
if(!int.TryParse(yourString, out number))
{
Not an int!
}
答案 2 :(得分:1)
'value'将始终与变量的类型相同。因此有这个:
private bool mabool = false;
public bool MaBool
{
get { return mabool; }
set { mabool = value; }
}
不会崩溃。这是因为,正如我所说,价值将是变量的同一类型。在这种情况下,value是一个布尔值。
尝试使用课程:
public class Rotator
{
public Roll, Pitch, Yaw;
// Declarations here (...)
}
private Rotator rotation = new Rotator();
public Rotator Rotation
{
get { return rotation; }
set
{
// Since value is of the same type as our variable (Rotator)
// then we can access it's components.
if (value.Yaw > 180) // Limit yaw to a maximum of 180°
value.Yaw = 180;
else if (value.Yaw < -180) // Limit yaw to a minimum of -180°
value.Yaw = -180;
rotation = value;
}
}
如第二个例子所示,value是一个Rotator,因此我们可以访问它的组件。