2012-04-15 24 views

答えて

0

FooterTemplateを使用してください。例:

<asp:TemplateField> 
    <ItemTemplate> 
     ... 
    </ItemTemplate> 
    <FooterTemplate> 
     your textboxes go here 
    </FooterTemplate> 
</asp:TemplateField> 
<asp:TemplateField> 
    <ItemTemplate> 
     ... 
    </ItemTemplate> 
    <FooterTemplate> 
     your textboxes go here 
    </FooterTemplate> 
</asp:TemplateField> 
+0

私が入れたとき .itは私に警告/エラーを与えます。 どうすればよいですか? –

+0

警告/エラーの内容を共有した場合は、役立つことがあります。 –

+0

BoundFieldとTemplateFieldを同じ列に使用することはできません。テンプレートフィールドを使用し、ItemTemplateで<%#Eval( "DataField")%>のような処理を行い、その列にデータを出力します。 – Ricketts

0

BoundFieldクラスとTemplateFieldクラスの違いを理解しておく必要があります。最初はフィールドとしてテキストを表示するのに対し、TemplateFieldでは情報を表示する方法をカスタマイズできます。したがって、BoundField または TemplateFieldを列内に使用する必要があります(あなたが試していると思うように別のものにネストされているものではない)場合は、フッターの表示方法をカスタマイズする必要があるためTemplateFieldでなければなりません。 GridViewのID = "GridView1":

<asp:TemplateField> 
    <ItemTemplate> 
     <asp:Label ID="lblNumber" runat="server" Text='<%# Bind("Number")%>' /> 
    </ItemTemplate> 
    <FooterTemplate> 
     <asp:TextBox ID="txb" runat="server"></asp:TextBox> 
    </FooterTemplate> 
</asp:TemplateField> 
0

OnRowDataBoundイベントに<FooterTemplate>

<asp:TemplateField HeaderText="UnitsInStock"> 
     <ItemTemplate> 
      //your displaying control 
     </ItemTemplate>     
     <FooterTemplate> 
       <asp:TextBox id="tb1" Text="Text" runat="server" /> 
     </FooterTemplate> 
     </asp:TemplateField> 

検索フッターのコントロールにテキストボックスを追加します:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.Footer) 
    { 
     TextBox tb1 = (TextBox)e.Row.FindControl("tb1"); 
     //do your stuff 
    } 
} 
関連する問題