将非属性绑定到数据网格列DataField?

4
假设我有一个类似于以下样式的DataGrid:
<asp:DataGrid ID="SomeDataGrid" runat="server">
    <Columns>
        <asp:BoundColumn HeaderText="A Header" SortExpression="Sort" DataField="Data"></asp:BoundColumn>
    </Columns>
</asp:DataGrid>

在这个网格中,我将数据源设置为包含一个名为“Data”的公共属性的集合,并执行databind()。一切都按预期进行。
现在假设我想将列的DataField属性设置为公共成员、属性或其他我已计算出的内容。在不创建中间对象或向集合中的对象添加公共属性的情况下,最简单的方法是什么?
所以我想做的事情是:
<asp:BoundColumn HeaderText="A Header" SortExpression="Sort" DataField="someMethod()"></asp:BoundColumn>
1个回答

3
使用 TemplateColumn
<asp:TemplateColumn HeaderText="Test">
<ItemTemplate>
<asp:Label runat="server" Text='<%# SomeMethod() %>'></asp:Label>  
</ItemTemplate>
</asp:TemplateColumn>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接