2013-07-25 4 views
0

В моем gridview некоторые строки уже представлены. В Gridview есть один столбец, содержащий ссылку. Но когда я добавляю новую строку в gridview, я хочу изменить текст этой кнопки ссылки только для этой новой строки.Как изменить текст кнопки ссылки в gridview во время выполнения в asp.net

Заранее спасибо.

ответ

0

GridView не поддерживает вставки новой строки, как, как мы обновить/удалить row.This означает, что Там нет такого BuiltIn функциональность для вставки строки. Очевидно, что для этой проблемы есть обходные пути. Вы можете сказать, что есть событие RowCreated Событие GridView, однако это событие возникает, когда GridView отображает себя и его вид тесно связан с RowDataBound.

Самый простой способ получить вставку в новую строку - использовать DetailsView.

DetailsView:

Добавить CommandField внутри <Fields> секции Подробный вид, как показано ниже:

<asp:DetailsView ID="DetailsView1" runat="server" AllowPaging="True" 
      AutoGenerateRows="False" DataKeyNames="CustomerID" 
      DataSourceID="SqlDataSource1" Height="50px" Width="125px"> 
      <Fields> 
       <asp:BoundField DataField="CustomerID" HeaderText="CustomerID"    
        SortExpression="CustomerID" /> 
       <asp:BoundField DataField="CompanyName" HeaderText="CompanyName"/> 
       <asp:BoundField DataField="ContactName" HeaderText="ContactName"/>  
       <asp:CommandField ShowDeleteButton="False" ShowEditButton="True" 
        ShowInsertButton="True" /> 
      </Fields> 
     </asp:DetailsView> 

Вы также должны иметь контроль SqlDataSource, как показано ниже:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
      ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
      InsertCommand="INSERT INTO [Customers] ([CustomerID], [CompanyName], [ContactName]) VALUES (@CustomerID, @CompanyName, @ContactName)" > 
<InsertParameters> 
       <asp:Parameter Name="CustomerID" Type="String" /> 
       <asp:Parameter Name="CompanyName" Type="String" /> 
       <asp:Parameter Name="ContactName" Type="String" /> 
</InsertParameters> 
     </asp:SqlDataSource> 

Однако, если вы нт использовать сетку View, только используя обходные пути, ниже ссылки стоит посмотреть: http://aspsnippets.com/Articles/Adding-Dynamic-Rows-in-ASP.Net-GridView-Control-with-TextBoxes.aspx