グリッドビューで行番号を表示する必要があります。BoundFieldまたはTemplateFieldを使用して行番号を表示する最良の方法は何ですか?
注:これは、マークアップのみを使用して実行する必要があります(コードビハインドなし)。
注:並べ替えが行われる場合、行番号は順番に並べないでください。最初の行はその内容とともに下に移動する必要があります。
私はすでに以下を参照しました:
グリッドビューで行番号を表示する必要があります。BoundFieldまたはTemplateFieldを使用して行番号を表示する最良の方法は何ですか?
注:これは、マークアップのみを使用して実行する必要があります(コードビハインドなし)。
注:並べ替えが行われる場合、行番号は順番に並べないでください。最初の行はその内容とともに下に移動する必要があります。
私はすでに以下を参照しました:
<asp:TemplateField HeaderText="#" >
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
</asp:TemplateField>
ちなみに、あなたが参照した記事で提案されたこのソリューション。なぜあなたはそれが好きではなく、ここで尋ねますか?
これを行うのに最適な場所は、templatefieldを使用することです。
<asp:TemplateField HeaderText="Row Number"> <ItemTemplate> <%# Container.DataItemIndex + 1 %> </ItemTemplate> </asp:TemplateField>
例http://www.devcurry.com/2010/01/add-row-number-to-gridview.html
BoundFieldは、指定されたDataSourceフィールドの値をテキストとして表示します。TemplateFieldを使用すると、htmlを組み合わせたり、Webコントロールを利用したりできます。
違いを確認するには、以下の説明を参照してください。 http://forums.asp.net/t/1804988.aspx/1
グリッドビューはhtmlテーブルとしてレンダリングされます。コードビハインドで行番号を計算したくない場合は、JQueryを使用する必要があります。
var rowCount = $('#myTable tr').length;
また、テーブルフッターにrowCount値を入力する必要があります。