IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[ASP.net 2]Comment rendre un boudfield d'un gridview cliquable ?


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut [ASP.net 2]Hyperlinkfield qui ne fonctionne pas...
    Bonjour,

    J'ai un gridview sui récupère des données dans un table et l'un des champs contient en fait un lien. Comment le rendre cliquable dans le gridview? J'ai essayé d'encadré le <asp:boudfield> avec <a></a> et d'autres bidouilles mais rien n'y fait. Une idée ?

  2. #2
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Avec un BoundField ça marchera pas.

  3. #3
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Mose
    Avec un BoundField ça marchera pas.
    Oui et je fais comment alors ? J'insère directement la syntaxe du lien lors des insertions dans la base ?

  4. #4
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    lol

    non, tu lis la doc et tu allumes ton cerveau

  5. #5
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Mose
    lol

    non, tu lis la doc et tu allumes ton cerveau
    Ok, donc j'utilise un hyperlinkfield.

    J'ai trouvé un exemple provenant de la MSDN et je l'ai adapté à mon cas. Mais le lien n'est toujours pas cliquable...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:HyperLinkField DataTextField="lienserveur" Text="lienserveur" DataNavigateUrlFields="lienserveur" DataNavigateUrlFormatString="{0}" HeaderText="Lien"/>

  6. #6
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Je te suggère le ButtonField
    voir ici

  7. #7
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Mose
    Je te suggère le ButtonField
    voir ici

    Ok, merci pour le tuyau je vais essayé

  8. #8
    Candidat au Club
    Inscrit en
    Novembre 2005
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Bon moi je fais ça sur mon gridview avec mon adresse mail stockée en BDD et ça marche bien.
    Dans la page aspx, dans le gridview j'ai une colonne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <asp:TemplateField HeaderText="Email">
                  <ItemTemplate>
                       <asp:HyperLink ID="lblEMail" runat="server" Text='<%# Bind("AdresseEmail") %>'></asp:HyperLink>
                  </ItemTemplate>
              </asp:TemplateField >
    Dans le code aspx.cs dans le synchropage rajoute :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     txtCoordEmail.Text = "<a href=\"mailto:" + oEmail.AdresseEmail + "\">" + oEmail.AdresseEmail + "</a>";
    sachant que txtCoordEmail contient par exemple le mail "sylvie@guillaume.iut" stocké tel quel en BDD.
    @++ Flo

  9. #9
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Mose
    Je te suggère le ButtonField
    voir ici

    J'ai suivi la méthode de ce lien est voilà le résultat à la compilation :

    La propriété ou l'indexeur 'System.Web.UI.WebControls.CommandEventArgs.CommandName' ne peut pas être assigné -- il est en lecture seule

    Arf, j'ai pas de chance...

  10. #10
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par imfloflo

    Dans le code aspx.cs dans le synchropage rajoute :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     txtCoordEmail.Text = "<a href=\"mailto:" + oEmail.AdresseEmail + "\">" + oEmail.AdresseEmail + "</a>";
    sachant que txtCoordEmail contient par exemple le mail "sylvie@guillaume.iut" stocké tel quel en BDD.
    @++ Flo

    ça correspond à quoi txtCoordEmail.Text? C'est un composant de ta page aspx?

  11. #11
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Pour le champs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:ButtonField DataTextField="MyData" CommandName="FaireLeMenage" />
    Et dans ton code-behind :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    protected void _gridview_RowCommand(object sender, GridViewCommandEventArgs e)
    {
    	if(e.CommandName == "FaireLeMenage")
    	{
    		// ici j'applique ma commande
    	}
    }
    Good luck

  12. #12
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Mose
    Pour le champs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:ButtonField DataTextField="MyData" CommandName="FaireLeMenage" />
    Et dans ton code-behind :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    protected void _gridview_RowCommand(object sender, GridViewCommandEventArgs e)
    {
    	if(e.CommandName == "FaireLeMenage")
    	{
    		// ici j'applique ma commande
    	}
    }
    Good luck

    Ok sur ce principe, mais j'ai encore une question. Il faudrait que je fasse un Response.Redirect("lien")... mais comment récupérer la valeur du DataTextField ?

    J'ai aussi un problème de mise en page : j'aimerais que sur les boutons apparaissent le texte Download et pas le lien en entier... j'ai essayer HeaderText, Text, rien n'y fait...

    Merci d'avance,

Discussions similaires

  1. [ASP.NET][C#]Comment modifier les entetes d'un DataGrid?
    Par Cervantes dans le forum ASP.NET
    Réponses: 2
    Dernier message: 11/04/2007, 17h51
  2. [asp.net][c#]comment faire pour telecharger un fichier?
    Par WELCOMSMAIL dans le forum ASP.NET
    Réponses: 5
    Dernier message: 24/08/2006, 11h54
  3. Réponses: 2
    Dernier message: 29/06/2006, 17h24
  4. [VB.Net][TabControl] Comment rendre invisible un Tabpage ?
    Par bguihal dans le forum Windows Forms
    Réponses: 4
    Dernier message: 03/04/2006, 08h51
  5. Réponses: 5
    Dernier message: 28/11/2005, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo