我正在尝试将TextBox
内的值转换为RowCommand
的{{1}}内的值。
gridview
我收到以下错误:
else if (e.CommandName == "UpdateRow")
{
int rowIndex = ((GridViewRow)((LinkButton)e.CommandSource).NamingContainer).RowIndex;
int TimeSheetId = Convert.ToInt32(e.CommandArgument);
int Sunday = Convert.ToInt32((TextBox)gvEmployeeTimeSheet.Rows[rowIndex].FindControl("txtSunday"));// Error here
int Monday = Convert.ToInt32((TextBox)gvEmployeeTimeSheet.Rows[rowIndex].FindControl("txtMonday"));// Error her
}
答案 0 :(得分:1)
正如错误所说,您正在尝试将文本框转换为整数。这是不可能的。所以它应该是这样的 -
int Sunday = Convert.ToInt32((TextBox)(gvEmployeeTimeSheet.Rows[rowIndex].FindControl("txtSunday")).Text);
int Monday = Convert.ToInt32((TextBox)(gvEmployeeTimeSheet.Rows[rowIndex].FindControl("txtMonday")).Text);
答案 1 :(得分:0)
您正在找到控件然后尝试将其转换为整数,您需要选择文本框的文本属性并转换它。
int Sunday = Convert.ToInt32(((TextBox)gvEmployeeTimeSheet.Rows[rowIndex].FindControl("txtSunday")).Text);
int Monday = Convert.ToInt32(((TextBox)gvEmployeeTimeSheet.Rows[rowIndex].FindControl("txtMonday")).Text);