输入字符串的格式不正确.(可编辑网格视图)

本文关键字:编辑 网格 视图 字符串 格式 不正确 输入 | 更新日期: 2023-09-27 17:59:39

每当我试图编辑网格视图中的信息时,它都会抛出这个错误。。。。

这是我的行编辑代码

protected void GRDTech_RowEditing(object sender, GridViewEditEventArgs e)
{  
 GRDTech.EditRowStyle.BackColor = System.Drawing.Color.LightYellow;
 GRDTech.EditIndex = e.NewEditIndex;
 BindData();
}

这是我的代码:

 bool comparedResults = true;
TextBox txtAddFROMKMREAD = (TextBox)Default._def.GRDTech
    .FooterRow.FindControl("txtAddFROMKMREAD");
DropDownList drpPlateNum = (DropDownList)Default._def.GRDTech
    .FooterRow.FindControl("drpPlateNum");
string txt = txtAddFROMKMREAD.Text;
int readDepartureKM = Convert.ToInt32(txtAddFROMKMREAD.Text);
TextBox txtAddTOKMREADING = (TextBox)Default._def
    .GRDTech.FooterRow.FindControl("txtAddTOKMREADING");
int arrivalKMreading = Convert.ToInt32(txtAddTOKMREADING.Text);
comparedResults = (arrivalKMreading < readDepartureKM);

部分CCD_ 1不断地给我输入字符串不正确的错误。我该怎么解决这个问题?

输入字符串的格式不正确.(可编辑网格视图)

您在txtAddTOKMREADING.Text中的值似乎不是vlid integer(可能为空?)。

当您不确定文本是否有效时(例如,当您使用textbox进行用户输入时),最好使用int.TryParse:

来自int.TryParse:的文档

将数字的字符串表示形式转换为其32位带符号的整数等价。返回值指示转换是否成功。

int readDepartureKM ;
bool parsedSuccessfully = int.TryParse(txtAddFROMKMREAD.Text, out readDepartureKM )
if(parsedSuccessfully)
{
    //Do something with the value that is in readDepartureKM 
}
else
{
   //do something else (perhaps an error message?)
   string message =String.Format("'{0}' Is not a valid integer.",txtAddFROMKMREAD.Text);
}