Привязка Telerik RadGRID к объекту list<string>
Вопрос
У меня есть простой способ использования RadGrid, который предполагает привязку его к списку строк.
i.e. using: list<string>
Привязка работает нормально, и данные отображаются в сетке.Однако в заголовке указано «Элемент», и есть другие аспекты столбца, которые я хотел бы настроить.Я попытался установить свойство DataField столбца на странице ascx:
<telerik:GridTemplateColumn UniqueName="column"
DataField="" HeaderText="Omniture Codes">
однако, похоже, ему нужно имя поля данных, как в случае с объектом с данными, но не со списком.
Кто-нибудь знает способ привязать столбец к списку или есть другая идея обходного пути?
Решение
Я думаю, вам следует использовать GridBoundColumn вместо GridTemplateColumn и отключить AutoGenerateColumns.
Например.для меня работает следующее:
АСПХ:
<telerik:RadGrid ID="grid" runat="server" AutoGenerateColumns="false">
<MasterTableView>
<Columns>
<telerik:GridBoundColumn DataField="" HeaderText="MyHeaderText">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
Код программной части:
protected void Page_Load(object sender, EventArgs e)
{
List<string> data = new List<string> {"a", "b", "c"};
grid.DataSource = data;
}
Другие советы
Вам нужно попробовать что-то подобное с RadGrid:
<Columns>
<telerik:GridBoundColumn DataField="AddrLine1" HeaderText="Address Line 1" SortExpression="AddrLine1" UniqueName="AddrLine1">
<HeaderStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Left" Wrap="True" />
<ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False"Font-Underline="False" HorizontalAlign="Left" Wrap="True" />
</telerik:GridBoundColumn>
</Columns>
вы также можете использовать свойство Item Template в radgrid для создания любого дизайна.
нравиться
<ItemTemplate>
<div style="width:277px; text-align:left;">
<span style=" font-size:11px;"> Tdata1:</span>
<%# Eval("data1")%>
<br />
<span> data2:</span>
<%# Eval("data2")%>
<br />
</div>
</ItemTemplate>
<Columns>
<telerik:GridBoundColumn DataField="data1" HeaderText="data1" SortExpression="data1" UniqueName="data1">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="data2" HeaderText="data2" SortExpression="data2" UniqueName="data2">
</telerik:GridBoundColumn>
</Columns>