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 :

Comment réaliser ce tableau ?


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Gunny
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Danemark

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2007
    Messages : 194
    Par défaut Comment réaliser ce tableau ?
    Bonjour chers collègues,

    Je suis actuellement en train de réaliser une application en C#/ASP.NET, et je bute sur un tableau.
    En gros, mon appli gère des véhicules, et j'ai un tableau qui permet d'avoir une vue d'ensemble de la disponibilité (ou non) de certains véhicules, pour une période de temps donnée.
    C'est une sorte de tableau à deux dimensions avec, horizontalement les jours et en verticalement les véhicules. Dans chaque case, on a pour information le temps de disponibilité restant, avec un fond changeant de couleur selon que le véhicule est entièrement, partiellement ou pas du tout disponible.

    J'ai déjà écrit une procédure stockée qui, prenant en paramètres une immatriculation, une date de début et un nombre de jours, me renvoie une ligne pour chaque jour, comportant, en minutes, le temps de disponibilité restant.

    En pièces jointes, le formulaire, et le dit tableau, tel qu'il devrait apparaitre en dessous, lorsque l'on clique sur le bouton "Afficher". Le formulaire comporte juste une liste avec des véhicules, une date de début, et un nombre de jours à choisir.

    La Datagrid n'ayant pas l'air adaptée à ce que je veux, je me suis tourné vers les Repeater, mais j'ai beau retourner le truc dans tous les sens, je n'arrive pas à voir comment je peux bien faire ça...

    Si quelqu'un a une idée

    Merci !
    Images attachées Images attachées   

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Par défaut
    A ma connaissance, moyennant quelques manipulations, on peut changer le couleur d'arrière plan d'une cellule de DataGrid.

    J'ai aperçu comme solution d'ajouter un événement sur ItemDataBound, ce qui permet de contrôler l'aspect des lignes, et donc de leurs cellules.
    Ceci dit, je ne l'ai jamais fait.

    Le temps que j'écrive ça, j'ai aussi trouvé ceci :
    http://www.codeproject.com/KB/cs/cus...olumnstyl.aspx
    Au moins, là, le code est fourni.

  3. #3
    Membre éprouvé Avatar de Gunny
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Danemark

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2007
    Messages : 194
    Par défaut
    Merci, je garde ça de côté !
    Cependant, en fait, mon problème vient plus du fait que je n'ai absolument aucune idée de comment je peux ne serait-ce que réaliser ce tableau en asp.net et c# (le screenshot du tableau vient d'une vieille appli en asp). Mes données ne se présentent pas vraiment sous une forme adaptée aux Datagrids.

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Par défaut
    Dans ce cas, tu peux aussi imaginer générer ton tableau en HTML, à la volée.
    Et suivant la valeur ramenée, tu peux appliquer un style à ta cellule.
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    td.redgb {
      background-color: #ff0000;
    }
    td.greengb {
      background-color: #00ff00;
    }

    Code XHTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ...
    <tr>
      <td class="redgb">0h00</td>
      <td class="greenbg">23h59</td>
      ...
    </tr>
    ...

    Du coup, tu insères un contrôle "label" sur ta page ASP .net, et depuis le code behind, tu remplis ce Label :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    System.Text.StringBuilder sb = new System.Text.StringBuilder(String.Empty);
    sb.Append("<table>" + Environnement.NewLine);
    sb.Append("  <tr>" + Environnement.NewLine);
    /*
     * Tests sur tes valeurs et ajout des <td class=""></td>
     */
    sb.Append("  </tr>" + Environnement.NewLine);
    MonLabel.Text = sb.ToString();

  5. #5
    Membre éprouvé Avatar de Gunny
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Danemark

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2007
    Messages : 194
    Par défaut
    Merci ! Pas bête comme solution, même si ça fait un peu "bourrin". Ceci dit, ça a l'avantage d'être assez simple à coder, alors si je ne trouve rien d'autre j'essaierai ça

  6. #6
    Membre chevronné
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Par défaut
    C'est moins bourrin que ça peut y paraître... parce que tu vas gérer ça avec des boucles

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment réaliser une boucle pour remplir un tableau
    Par LVChatel dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 03/04/2009, 11h20
  2. Comment réaliser un tableau de bord ?
    Par msi16 dans le forum Excel
    Réponses: 8
    Dernier message: 24/11/2008, 10h19
  3. Comment réaliser un tableau de boutons ?
    Par padawan78 dans le forum Windows Forms
    Réponses: 14
    Dernier message: 31/03/2008, 23h06
  4. msi ou comment réaliser un installeur?
    Par herzleid dans le forum Delphi
    Réponses: 11
    Dernier message: 09/04/2007, 19h27
  5. comment creer un tableau "stable"
    Par gaut dans le forum C
    Réponses: 16
    Dernier message: 23/07/2003, 16h20

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