Привязать не свойство к столбцу данных DataField? - PullRequest
4 голосов
/ 31 марта 2011

Допустим, у меня есть DataGrid, который выглядит примерно так:

<asp:DataGrid ID="SomeDataGrid" runat="server">
    <Columns>
        <asp:BoundColumn HeaderText="A Header" SortExpression="Sort" DataField="Data"></asp:BoundColumn>
    </Columns>
</asp:DataGrid>

В этой таблице я установил источник данных для некоторой коллекции, которая содержит открытое свойство с именем «Данные», и сделал databind().Все работает так, как ожидалось.

Теперь предположим, что я хочу установить атрибут DataField столбца для открытого члена, или свойства, или какой-то другой вещи, которую я вычислил.Как проще всего это сделать, не создавая промежуточные объекты или не добавляя общедоступные свойства к объектам в коллекции?

Итак, я хочу сделать что-то вроде:

<asp:BoundColumn HeaderText="A Header" SortExpression="Sort" DataField="someMethod()"></asp:BoundColumn>

1 Ответ

3 голосов
/ 31 марта 2011

Использовать TemplateColumn

<asp:TemplateColumn HeaderText="Test">
<ItemTemplate>
<asp:Label runat="server" Text='<%# SomeMethod() %>'></asp:Label>  
</ItemTemplate>
</asp:TemplateColumn>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...