Question

J'espère que quelqu'un pourra m'aider avec une question sur les images et les contrôles GridView dans ASP.Net 2.0.

J'essaie de créer une application d'album photo comme exercice d'apprentissage utilisant un contrôle GridView à deux colonnes. La première colonne affiche l’image (en utilisant un type de colonne image) en fonction d’une URL conservée dans la base de données que j’utilise, tandis que la deuxième colonne affiche des détails sur l’image, tels que la date, l’heure, le lieu, les personnes, etc.

Cela semble fonctionner correctement pour le moment, mais toutes les images sont de la même taille, quelle que soit leur orientation (portrait / paysage), ce qui signifie que seules certaines photos apparaissent correctement et ne sont pas toutes écrasées. Existe-t-il un moyen d’ajuster les propriétés de la colonne d’image de sorte qu’elle affiche toujours correctement la photo en fonction de son orientation? Ou une taille réduite tout en conservant l'aspect de l'image?

Était-ce utile?

La solution

Je n'ai aucune expérience du type de colonne ImageField, je suppose que vous utilisez.

Vous pouvez certainement simplement utiliser un TemplateField et une balise img (sans spécifier de largeur ni de hauteur) pour résoudre ce problème.

<asp:TemplateField>
    <ItemTemplate>
        <img src='<%# Bind("URLFromDB") %>' runat="server" />
    </ItemTemplate>
</asp:TemplateField>

Autres conseils

Vous pouvez interroger les propriétés de l'image, puis modifier votre conteneur d'images en conséquence. Cela devra être fait dans l'événement RowDataBound.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top