2013-05-29 2 views
0

У меня есть GridView, который работает нормально, за исключением одного: когда я нажимаю кнопку «Изменить ссылку», появляется список текстовых полей для редактирования значений, которые я хочу. Но, когда я нажимаю кнопку обновления и делаю ((TextBox)row.Cells[2].Controls[0]).Text (например), он возвращает мне значение, которое было там до того, как я редактировал текстовое поле!Значения текстового поля при редактировании GridView

Любая идея о том, как получить доступ к новым текстам текстовых полей?

+0

Можешь ли вы предоставить некоторый код? Ваш вызов должен вернуть фактический текст, который установлен на первое текстовое поле на третьей ячейке в вашей строке. Но что делать? – Kooki

ответ

0

Эй вы должны делать на Gridview_RowUpdating команды как тот

protected void gvSalaryDetails_RowUpdating(object sender, GridViewUpdateEventArgs e) 
    {  
    ((TextBox)gvSalaryDetails.Rows[e.RowIndex].FindControl("txtgvSalaryHeadValue")).Text; 
    } 

и Aspx страница Шоул следовать так.

<asp:TemplateField HeaderText="Amount"> 
           <ItemTemplate> 
            <div class="control"> 
             <asp:Label ID="lblgvSalaryHeadValue" runat="server" Text='<%# ((SalaryDetails)Container.DataItem).HeadValue %>'></asp:Label> 
            </div> 
           </ItemTemplate> 
           <EditItemTemplate> 
            <asp:TextBox ID="txtgvSalaryHeadValue" runat="server" Text='<%# ((SalaryDetails)Container.DataItem).HeadValue %>'></asp:TextBox> 
     </EditItemTemplate> 
     </asp:TemplateField> 

Надеется, что это помогает вам ..

+0

Где я должен добавить TemplateField? – user2347300

+0

А что это за "SalaryDetails" в вашем контексте? – user2347300

+0

Шаблонное поле - это страница Aspx Под Gridview-> Column.And «SalaryDetails» - это сущность. Вы можете установить свой текст здесь или использовать Eval.Hope clear –

Смежные вопросы