0

GridView の DataItem "AmountCollected" をコード ビハインドで別のものに変更するにはどうすればよいですか。条件によってはDataItemをBalanceに変更したいのですが、できるのでしょうか?!! これは、c# と HTML を使用して VS 2005 を使用しています。

前もって感謝します!!

<asp:TemplateField ItemStyle-Width="70" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
     $<asp:Label ID="lblTotalCollected" runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"AmountCollected") %>'></asp:Label>
</ItemTemplate>

4

1 に答える 1

0

RowDataBoundのイベントを設定しGridViewます。このイベントはデータソース内のアイテムごとに実行され、条件に基づいて各行を変更できます。

public void myGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType != DataControlRowType.DataRow)
    {
        return;
    }

    Label myLabel = e.Row.FindControl("lblTotalCollected") as Label;
    MyClass myDataItem = e.Row.DataItem as MyClass;
    if(...)
    {
        myLabel.Text = myDataItem.Balance;
    }
    else
    {
        myLabel.Text = myDataItem.AmountCollected;
    }
}
于 2012-09-05T21:09:40.823 に答える