2009-07-14 8 views
1

J'ai une table parent appelée Publication et une table enfant appelée Owner. Ces deux tables (de données) sont contenues dans un DataSet (tout cela est en C#) et ont une relation définie. Une publication peut avoir plusieurs propriétaires. J'utilise un contrôle GridView et ma question est, comment puis-je obtenir les informations dans la table enfant pour apparaître dans le contrôle gridview? Le gridview est lié à l'ensemble de données principal.Jeux de données, relations de table parent/enfant et contrôles Gridview

J'ai lu l'information ici, mais ce qui est ennuyeux, c'est que l'écriture de trucs sur la console n'est pas très utile!

http://msdn.microsoft.com/en-us/library/d6s958d6(VS.80).aspx

Merci R.

Répondre

1

Êtes-vous désireux l'information des enfants à overwirte ce qui est dans la grille mère, apparaissent comme des lignes imbriquées sous la ligne parente, ou la meilleure façon, montrer une autre grille ci-dessous cette grille, puis sur la sélection de la ligne de la grille parent, peupler la grille inférieure avec les informations de sous-ensemble?

Jetez un oeil à http://www.asp.net/learn/data-access/tutorial-10-cs.aspx

Au lieu de coller les informations dans la vue de détails, il suffit d'utiliser une autre gridview. Clarifiez votre sortie désirée et je peux peut-être vous orienter dans une meilleure direction. Je crois que cet article qui a le code détaillé vous donnera exactement ce que vous cherchez, bien qu'il puisse y avoir un moyen plus facile ou une solution plus élégante, cela vous aidera au moins pour le moment.

http://www.aspboy.com/Categories/GridArticles/Hierarchical_GridView_With_Clickable_Rows.aspx

+0

Merci Breadtruck, Ce que je suis en train de faire est d'obtenir la liste des propriétaires de se présenter dans une cellule dans la gridview mère, donc quelque chose comme Publication, Ville, État, Type, Propriétaires Brocks Voir Oklahom OK W Nouvelles Presse Certains grands corp Nous possédons tout ltd. Une autre publication J'espère que cela clarifie un peu. – flavour404

+0

Et bien sûr, mon formatage de ce commentaire a été complètement perdu! Les propriétaires devraient apparaître comme une liste. – flavour404

0

Eh bien, si vous voulez la même gridview, vous devez afficher dans une colonne ... que diriez-vous d'un champ de modèle dans la collection de colonnes sur databinding appelle un code qui recherche l'enfant enregistrements à partir de l'identifiant de la publication:

<Columns> 

     <asp:TemplateField HeaderText="Description" SortExpression="Description"> 
      <ItemTemplate> 
      <%# GetChildRowRepresentation((int)Eval("Id")) %> 
      </ItemTemplate> 
     </asp:TemplateField> 

</Columns> 



protected string GetChildRowRepresentation(int id) 
{ 
    //look up the data set, return the appropriate info 
} 

un répéteur peut être une meilleure décision qu'un gridview car ils sont plus amicaux pour l'utilisation de mises en page personnalisées.

Questions connexes