2014-02-09 2 views
0

내 gridview의 첫 번째 행은 빈 행이며 이러한 빈 행은 내 gridview에서 값을 검색하는 데 사용됩니다. 모든 열에 빈 행을 추가하지만 첫 번째 열에 내 데이터의 ID 인 빈 행을 추가하고 싶지 않습니다. 두 번째 열에서 시작하는 빈 행을 추가하기 만하면됩니다. 내가 어떻게 할 수 있니?GridView에 검색 텍스트 상자 추가 Asp.net

protected void OnDataBound(object sender, EventArgs e) 
{ 
    GridViewRow row = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal); 
    for (int i = 0; i < GV_EditProject.Columns.Count; i++) 
    { 
     TableHeaderCell cell = new TableHeaderCell(); 
     TextBox txtSearch = new TextBox(); 
     txtSearch.Attributes["placeholder"] = GV_Test.Columns[i].HeaderText; 
     txtSearch.CssClass = "search_textbox"; 
     cell.Controls.Add(txtSearch); 
     row.Controls.Add(cell); 
    } 
    GV_Test.HeaderRow.Parent.Controls.AddAt(1, row); 
} 

여기 내 영문 파일

내가 헤더를 검색 텍스트 상자에 열에 대한 TemplateField를 사용하는 것이 좋습니다 것입니다
<Columns> 
    <asp:BoundField DataField="ID" HeaderText="ID" ItemStyle-Width="5"> 
     <ItemStyle Width="5px" /> 
    </asp:BoundField> 
+0

템플릿 필드를 사용하는 경우 마크 업에 텍스트 상자를 추가하는 것이 더 쉽습니다. 'HeaderTemplate'은 검색 TextBox를 추가하기에 좋은 장소입니다. – afzalulh

+0

바운드 필드를 사용 중입니다. 헤더 템플릿을 추가하는 방법을 보여 줄 수 있습니까? – moe

+0

방금 ​​바인딩 된 필드를 사용하고있는 내 gridview에 대한 aspx 코드를 추가했습니다. 제 초기 게시물을보세요. thanks – moe

답변

2

입니다 : 여기 뒤에 내 코드입니다. 예를 들어, 아래의 "설명"에 하나를 추가했습니다.

<Columns> 
    <asp:BoundField DataField="ID" HeaderText="ID" ItemStyle-Width="5"> 
     <ItemStyle Width="5px" /> 
    </asp:BoundField> 

    <%-- This bound field is converted to Template Field --%> 
    <%--<asp:BoundField DataField="COMMENTS" HeaderText="COMMENTS" ItemStyle-Width="5"> 
     <ItemStyle Width="5px" /> 
    </asp:BoundField>--%> 

    <asp:TemplateField ItemStyle-Width="150px" HeaderText="COMMENTS"> 
     <ItemTemplate> 
      <asp:Label ID="lblComm" runat="server" Text ='<%# Eval("COMMENTS")%>' ></asp:Label> 
     </ItemTemplate> 
     <HeaderTemplate> 
      <asp:TextBox ID="txtSearchComment" runat="server" CssClass="search_textbox" Text=""></asp:TextBox> 
     </HeaderTemplate> 
    </asp:TemplateField>