我们如何将数据放在GridView上的特定行索引上

时间:2013-09-05 07:58:39

标签: asp.net

我有一个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.
   }

2 个答案:

答案 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();
    }