2012-04-24 2 views

Répondre

0

Pour moi, cela ressemble à un accordéon où chaque section contient une table avec des données pour une date précise. Ce que vous pouvez faire dans ce cas est de créer dynamiquement des objets DIV (pour chaque donnée que vous avez l'intention de représenter) et dans chaque div ajoutez GridView ou DataGrid. Ensuite, vous auriez du style ces divs pour obtenir le look désiré. D'un autre côté, jetez un oeil à jQuery UI Accordion. Je comprends que vous êtes un novice mais jQuery UI Accordion pourrait vous aider à résoudre votre problème http://jqueryui.com/demos/accordion/.

+0

C'était très utile. Maintenant, j'ai eu un peu d'idée sur la façon d'utiliser jQuery UI pour créer ACCORDEON. Mais j'étais comment le faire dynamiquement. Si vous voyez l'exemple ci-dessus, j'obtiens toutes les données de la base de données, alors comment puis-je configurer dynamiquement cela. Votre aide serait extremement appreciee – user1345260

0

Ce n'est pas une structure triviale à implémenter. Vous voudrez probablement commencer avec un ListView ou un Repeater. Un répéteur est plus simple à utiliser, mais a plus de limites. Ensuite, à l'intérieur de chaque Item Template de votre Repeater ou ListView, vous aurez besoin d'un GridView. Le GridView gérera la table de données et la pagination.

Vous pouvez gérer l'événement Selected du ListView pour déterminer la ligne à développer, et remplir uniquement cette ligne du côté serveur, ou vous pouvez remplir toutes les lignes et utiliser un script côté client pour afficher/masquer les lignes . C'est à vous de décider quelle approche fonctionnera le mieux compte tenu de vos données.

Vous devez effectuer une liaison de données à deux niveaux, où vous liez d'abord le ListView à votre jeu de données principal, dans ce cas, il ressemble à une liste de dates. Ensuite, dans l'événement ItemDataBound du ListView, liez chaque GridView interne de chaque élément de vue liste. Vous pouvez le faire uniquement pour la ligne qui doit être affichée.

Il existe des moyens de l'optimiser, à coup sûr, avec un contrôle personnalisé pour chaque ligne, et ainsi de suite, mais c'est l'idée de base.