我有一个Gridview绑定数据库中的一些数据,除了Quantity Textbox。每次点击此按钮时,网格上还有一个按钮,一个数字被添加到数量框中(我想在网格上显示)。请参阅下面的代码&建议我。
代码:
if (e.CommandName == "Next")
{
int Index_Next = Convert.ToInt32(e.CommandArgument);
TextBox Quantity = (TextBox)grdSale.Rows[Index_Next].FindControl("txtDisplay");
int Val_Next = Convert.ToInt32(Quantity.Text);
if (Val_Next != 0 && Val_Next > 1)
{
Val_Next = Val_Next + 1;
}
(TextBox)grdSale.Rows[Index_Next].FindControl("txtDisplay") = Val_Next.ToString(); // Here I'm getting error. I also convert this string to TextBox but still show error.
}
答案 0 :(得分:4)
但您要分配给TextBox
(TextBox)grdSale.Rows[Index_Next]
.FindControl("txtDisplay") = Val_Next.ToString();
首先是错误的,因为左侧是System.Web.UI.WebContols.TextBox
而右侧是String
。您应该尝试设置找到文本TextBox
。你应该做的
((TextBox)grdSale.Rows[Index_Next]
.FindControl("txtDisplay")).Text = Val_Next.ToString();
答案 1 :(得分:3)
if (e.CommandName == "Next")
{
int Index_Next = Convert.ToInt32(e.CommandArgument);
TextBox Quantity = (TextBox)grdSale.Rows[Index_Next].FindControl("txtDisplay");
int Val_Next = Convert.ToInt32(Quantity.Text);
if (Val_Next != 0 && Val_Next < 1)
{
Val_Next = Val_Next + 1;
}
((TextBox)grdSale.Rows[Index_Next].FindControl("txtDisplay")).Text = Val_Next.ToString();
}