12
votes

Afficher plusieurs champs de données dans limitefield de GridView

J'ai un asp: gridview code> qui est lié. Dans ce cas, j'ai plusieurs colonnes, j'essaie d'obtenir les données de deux champs de base de données concatérés dans un seul champ.

Comment faire cela? P>

quelque chose comme ça? P>

asp:BoundField DataField="field1 + ' ' + field2" HeaderText="Status" SortExpression="info"


1 commentaires

La capitalisation appropriée et l'orthographe sont toujours un plus =)


4 Réponses :


-1
votes

Essayez comme ça. Si vous utilisez deux jeux de données, apportez-le sur un jeu de données et liez-le à GridView.

<asp:BoundField DataField="<%# DataBinder.Eval(Container.DataItem, "f1")%>+ ' ' + <%# DataBinder.Eval(Container.DataItem, "f2")%>" HeaderText="Status" SortExpression="info"/>


2 commentaires

Vous n'avez pas besoin d'utiliser des fichiers de modèle pour cela? Champs non liés?


@PSEudocoder: Il fonctionne, conteneur.datraitem est l'élément actuel, F1, F2 sont les propriétés à lire à partir de l'élément actuel.



25
votes

Assurez-vous à peu près que vous devez utiliser un modèle de modèle au lieu du champ limite pour cela.

Dans votre bloc Colonnes de GridView: P>

    <asp:TemplateField HeaderText="Name">
        <ItemTemplate>
            <%# Eval("FirstName") + " " + Eval("LastName")%>
        </ItemTemplate>
    </asp:TemplateField>


0 commentaires

1
votes
ToolTip='<%# Eval("LastName") & "-" & Eval("FirstName") %>'

0 commentaires

17
votes

Juste pour l'exhaustivité, car j'ai cherché une solution et est venu d'abord ici ...

Vous avez plus de flexibilité en utilisant string.format () code> p> xxx Pré>

Ici, vous pouvez également utiliser la puissance de string.format () code> pour formater les types de date et de numéro de numéro comme descriptions ici: https://docs.microsoft.com/en-us/dotnet/standard/base-tottypes/Formatting-types a> p>

échantillon: p> xxx pré>


Une autre option consiste à le faire dans une méthode personnalisée avec code derrière p>

ASPX : P>

public string GetStatus(object Status1, object Status2)
{
    return (string)Status1 + " " + (string)Status2;
}


0 commentaires