Перечислите <string>как источник данных GridView.Что я положу для DataField в BoundField GV? - PullRequest
3 голосов
/ 25 марта 2011

У меня есть List<string>, который я использую как DataSource для GridView.Я не хочу автоматически генерировать столбцы (это дает «Элемент» в качестве заголовка).Что мне поставить для DataField, чтобы получить строку, если я использую BoundField?ака <%# Eval( [whatgoeshere] ) %> в разметке?

Ответы [ 3 ]

7 голосов
/ 25 марта 2011

В этом случае вам придется использовать TemplateField, а не BoundField, например:

<asp:TemplateField HeaderText="My Header">
        <ItemTemplate>
        <%#Container.DataItem %>
        </ItemTemplate>
</asp:TemplateField>

Но для вашей основной проблемы заголовка столбца «Item» вы можете установить в заголовке столбца желаемое значение в кодесзади с AutoGenerateColumns.например,

GridView1.DataSource = list;
GridView1.DataBind();
GridView1.HeaderRow.Cells[0].Text = "My Custom Header";
2 голосов
/ 25 марта 2011

Вам просто нужно:

   <%# GetDataItem().ToString() %>

Подробнее см. В документации MSDN .

1 голос
/ 25 марта 2011

Вы должны иметь возможность использовать

<%# Container.DataItem %>

для привязки строковых элементов к вашему GridView.

...