[英]Input string was not in the correct format when parsing integers
我在表單中添加了一個文本框,我試圖從中獲取文本,但它出現了一個異常說
“輸入字符串的格式不正確。”
這是我的代碼:
deleteQuestion = Convert.ToInt32(textBox6.Text);
addQuestion = Convert.ToInt32(textBox7.Text);
listOfQuestions.RemoveAt(deleteQuestion - 1);
foreach (RichTextBox box in boxForQuestions)
{
if (Convert.ToInt32(box.Tag) == deleteQuestion - 1)
{
boxForQuestions.Remove(box);
}
}
在代碼的第二部分中,我的意圖是刪除動態添加的富文本框。
如果您無法控制用戶在這些文本框中鍵入的內容,請使用 Int32.TryParse
int deleteQuestion;
if(!Int32.TryParse(textBox6.Text, out deleteQuestion))
{
MessageBox.Show("Not a valid number to delete a question!");
return;
}
int addQuestion;
if(!Int32.TryParse(textBox7.Text, out addQuestion))
{
MessageBox.Show("Not a valid number to add a question!");
return;
}
當然,循環內使用的 Tag 屬性也應考慮相同,但這是由您的代碼設置的,因此我認為將其視為有效整數是安全的
代碼中的另一個問題是 foreach 循環中的刪除。 這是無法做到的,您無法在迭代集合時更改集合。 如果您確實需要從該集合中刪除一個元素,您應該考慮使用普通的 for... 循環並從最后一個元素循環到第一個元素
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.