-2

グリッドビューの各行の特定の列にセルを追加するにはどうすればよいですか 。RowCreatedイベントを使用したいのですが。

3つの列(ProductName、Price、Count)を持つgridviewがあり、データベースから(ProductName、Price)を取得し、(count)の値を追加したい例:(Kitkat、2 $)番号5を追加したい(カウント)列、各行が作成されたときにこの操作を処理したいと思います。

ありがとう

4

1 に答える 1

2

マークアップを表示していないので、(コメントに基づいて)最初の 2 つの列は<BoundFields>. その場合は、3 番目の列を として追加し、その中に<TemplateField>を配置しLabel、イベントを使用してRowDataBoundに正しい数値を追加しますLabel

マークアップは次のようになります。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
    onrowdatabound="GridView1_RowDataBound">
    <Columns>
        <asp:BoundField DataField="ProductName" HeaderText="Product Name" />
        <asp:BoundField DataField="Price" HeaderText="Price" />
        <asp:TemplateField HeaderText="Count">
            <ItemTemplate>
                <asp:Label ID="countLbl" runat="server"></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>

</asp:GridView>

コードビハインド:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    Label countLbl = (Label)e.Row.FindControl("countLbl");
    //Your logic for what number to use should go here, I'm just defaulting to 5.
    countLbl.Text = "5";
}
于 2012-04-11T14:10:25.717 に答える