2

所以我向我的 GridView 传递了一个 List<> 自定义对象。每个对象都包含其他对象。

这有效:

                <asp:TemplateField ItemStyle-CssClass="TableContent" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Center"
                    ItemStyle-VerticalAlign="Middle" HeaderText="Clicks" HeaderStyle-CssClass="OrangeTableHeaders">
                    <ItemTemplate>
                        <%# string.Format("{0:n0}",((MyProject.AppCode.AdGroup)Container.DataItem).AdStatistics.Clicks)%></ItemTemplate>
                </asp:TemplateField>

但是有没有办法用 BoundField 而不是 TemplateField 来实现这一点?

IE,这不起作用-我只是错误地格式化了呼叫吗?谢谢!

<asp:BoundField DataField="AdStatistics.Clicks" />
4

1 回答 1

3

只需AdStatisticsClicks在您的自定义对象中添加一个公共属性,例如:

public string AdStatisticsClicks
{
   return string.Format("{0:n0}", AdStatistics.Clicks);
}

并使用:

<asp:BoundField DataField="AdStatisticsClicks" HeaderText="Clicks" />
于 2012-04-09T16:26:29.937 回答