2009-02-13 9 views
4

J'ai une utilisation simple pour RadGrid qui implique la liant à une liste de chaînesReliure Telerik RadGrid à une liste <string> objet

i.e. using: list<string> 

La liaison fonctionne bien et les affichages de données dans la grille. Cependant, l'en-tête indique "Item", et il y a d'autres aspects de la colonne que j'aimerais pouvoir personnaliser. J'ai essayé de définir la propriété « DataField » de la colonne sur la page ascx:

<telerik:GridTemplateColumn UniqueName="column" 
DataField="" HeaderText="Omniture Codes"> 

cependant, il semble vouloir le nom d'un champ de données, comme dans ce que vous obtiendriez avec un objet DataTable, mais pas avec une liste.

Est-ce que quelqu'un connaît un moyen de lier la colonne à la liste, ou avez une autre idée pour une solution de rechange?

+0

Un peu plus de code w Sois gentil de voir. Comment liez-vous la liste? –

Répondre

12

Je pense que vous devriez utiliser un GridBoundColumn au lieu du GridTemplateColumn et désactiver AutoGenerateColumns.

E.g. les travaux suivants pour moi:

ASPX:

<telerik:RadGrid ID="grid" runat="server" AutoGenerateColumns="false"> 
    <MasterTableView> 
    <Columns> 
     <telerik:GridBoundColumn DataField="" HeaderText="MyHeaderText"> 
     </telerik:GridBoundColumn> 
    </Columns> 
    </MasterTableView> 
</telerik:RadGrid> 

code-behind:

protected void Page_Load(object sender, EventArgs e) 
{ 
    List<string> data = new List<string> {"a", "b", "c"}; 
    grid.DataSource = data; 

} 
+0

Cela a fonctionné comme un charme! Merci. – alchemical

1

Vous devez essayer quelque chose comme ça avec le 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> 
0

vous pouvez également utiliser la propriété d'élément de modèle de RadGrid pour générer un desgin ..

comme

<ItemTemplate> 
        <div style="width:277px; text-align:left;"> 
         <span style=" font-size:11px;">&nbsp;&nbsp;Tdata1:</span> 
         <%# Eval("data1")%> 
         <br />       
         <span>&nbsp;&nbsp;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> 
Questions connexes