C# I';I’’我尽量使文本框中的数字不能增加
我是一个noobie,正试图将其设置为用户无法增加.mdf文件中文本框中的数字,但当我测试运行并测试程序的这一部分时,它崩溃了,我看到一条“System.FormatException:'输入字符串格式不正确'”错误消息C# I';I’’我尽量使文本框中的数字不能增加,c#,C#,我是一个noobie,正试图将其设置为用户无法增加.mdf文件中文本框中的数字,但当我测试运行并测试程序的这一部分时,它崩溃了,我看到一条“System.FormatException:'输入字符串格式不正确'”错误消息 private void HoeveelheidTextBox_TextChanged(object sender, EventArgs e) { if (42 < int.Parse(hoeveelheidTextBox.Text
private void HoeveelheidTextBox_TextChanged(object sender, EventArgs e)
{
if (42 < int.Parse(hoeveelheidTextBox.Text))
{
MessageBox.Show("je kan niet schoenen erbij doen");
{
hoeveelheidTextBox.ToString();
hoeveelheidTextBox.Text = "";
}
}
}
private void HoeveelheidTextBox\u TextChanged(对象发送方,事件参数e)
{
if(42
(je kan niet schoenen erbij doen=你不能再添加鞋子了
hoeveelheid=金额)
正如您在代码中所看到的,我尝试将文本框转换回字符串,但是仍然出现错误
我期望的结果是,当数字大于最初的值时,程序会清除文本框。好吧,似乎有一种可能性,
HoeveelheidTextBox
的值不是有效的int
值(例如,空字符串);让我们使用TryParse
而不是Parse
:
private void HoeveelheidTextBox_TextChanged(object sender, EventArgs e) {
if (int.TryParse(hoeveelheidTextBox.Text, out int value)) {
// TryParse succeeded; hoeveelheidTextBox.Text has an integer value
// Let's check what the value is
if (42 < value) {
// hoeveelheidTextBox.Text has an integer value that exceeds 42
MessageBox.Show("je kan niet schoenen erbij doen");
hoeveelheidTextBox.Text = "";
}
else {
// hoeveelheidTextBox.Text has an integer value which is 42 or below it
}
}
else { // TryParse failed;
// hoeveelheidTextBox.Text doesn't have an integer value
// (it can be an empty string, "bla-bla-bla" etc.)
hoeveelheidTextBox.Text = "";
}
}
private void HoeveelheidTextBox\u TextChanged(对象发送方,事件参数e){
if(int.TryParse(hoeveelheidTextBox.Text,out int值)){
//TryParse成功;hoeveelheidTextBox。文本具有整数值
//让我们检查一下这个值是多少
如果(42<值){
//hoeveelheidTextBox.Text的整数值超过42
MessageBox.Show(“je kan niet schoenen erbij doen”);
hoeveelheidTextBox.Text=”“;
}
否则{
//文本的整数值等于或小于42
}
}
否则{//TryParse失败;
//hoeveelheidTextBox。文本没有整数值
//(可以是空字符串,“bla bla”等)
hoeveelheidTextBox.Text=”“;
}
}
嗯,似乎有一种可能性,HoeveelheidTextBox
的值不是有效的int
值(比如,一个空字符串);让我们使用TryParse
而不是Parse
:
private void HoeveelheidTextBox_TextChanged(object sender, EventArgs e) {
if (int.TryParse(hoeveelheidTextBox.Text, out int value)) {
// TryParse succeeded; hoeveelheidTextBox.Text has an integer value
// Let's check what the value is
if (42 < value) {
// hoeveelheidTextBox.Text has an integer value that exceeds 42
MessageBox.Show("je kan niet schoenen erbij doen");
hoeveelheidTextBox.Text = "";
}
else {
// hoeveelheidTextBox.Text has an integer value which is 42 or below it
}
}
else { // TryParse failed;
// hoeveelheidTextBox.Text doesn't have an integer value
// (it can be an empty string, "bla-bla-bla" etc.)
hoeveelheidTextBox.Text = "";
}
}
private void HoeveelheidTextBox\u TextChanged(对象发送方,事件参数e){
if(int.TryParse(hoeveelheidTextBox.Text,out int值)){
//TryParse成功;hoeveelheidTextBox。文本具有整数值
//让我们检查一下这个值是多少
如果(42<值){
//hoeveelheidTextBox.Text的整数值超过42
MessageBox.Show(“je kan niet schoenen erbij doen”);
hoeveelheidTextBox.Text=”“;
}
否则{
//文本的整数值等于或小于42
}
}
否则{//TryParse失败;
//hoeveelheidTextBox。文本没有整数值
//(可以是空字符串,“bla bla”等)
hoeveelheidTextBox.Text=”“;
}
}
这意味着hoeveelheidTextBox.Text
中的值不可转换为整数注:不确定这里是什么,尽管int.Parse
不会使hoeveelheidTextBox.Text
成为一个数字,因此对hoeveelheidTextBox.ToString()没有用处
查看TryParse
函数:这意味着hoeveelheidTextBox.Text
中的值不能转换为整数注意:不确定这里发生了什么,尽管int.Parse
不能使hoeveelheidTextBox.Text
成为一个数字,因此对hoeveelheidTextBox.ToString()没有帮助
查看TryParse
功能: