Ошибка в gridview

Я написал свой код под кнопкой следующим образом

 string actkey = string.Empty;
    foreach (GridViewRow row in GridView1.Rows)
    {
        //Label lbInvoice = (Label)row.FindControl("lblInvoice");
        string strInvoice = GridView1.DataKeys[row.RowIndex].Values["lblInvoice"].ToString();
        objinvoice.Invoice = strInvoice;
        RadioButton rdn = (RadioButton)row.FindControl("rdnRenew");
        if (rdn.Checked)
        {
            actkey = oCustomerDetails.CreateRandom(20);
            objinvoice.activationcode = actkey;
            objinvoice.editInvoice(actkey, strInvoice);
        }
    }

Но я получаю ошибку в этом

string strInvoice = GridView1.DataKeys[row.RowIndex].Values["lblInvoice"].ToString();

Есть ли что-то не так в том, что я записал

Я объявил свой шаблон объекта следующим образом

      <ItemTemplate>
                        <asp:Label ID="lblInvoice" runat="server" Text='<%# Eval("invoceNo") %>'></asp:Label>
                    </ItemTemplate>
1
задан Dorababu Meka 14 August 2010 в 08:41
поделиться

3 ответа

Это рабочий

 string strInvoice = GridView1.DataKeys[row.RowIndex].Values["invoceNo"].ToString();

, а также для сетки мы должны назначить значения Datakey ...

0
ответ дан 2 September 2019 в 22:09
поделиться
<asp:Label ID="lblInvoice" runat="server" Text=<%# Eval("invoceNo") %>

Вы получаете эту ошибку, потому что, возможно, эта строка не устанавливает никакого значения для метки .

 string strInvoice = GridView1.DataKeys[row.RowIndex].Values["lblInvoice"].ToString();

если значение равно NULL, то remove (.ToString ()) может работать

2
ответ дан 2 September 2019 в 22:09
поделиться

Получил ответ, забыл указать имена данных в GridView .

0
ответ дан 2 September 2019 в 22:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: