2011-01-31 8 views
2

suppose que je suis lier mon TreeView et signe plus est à venir et je veux quand je clique sur le signe plus alors dynamiquement une listview ou la grille montreront juste sous le nœud où je clique sur le bouton et les données connexes démontrerai à travers la grille ou listview.TreeView et ListView WPF

dans MS-Access lorsque nous créons une relation dans une table puis lorsque nous voyons la table principale, les enregistrements associés affichent un signe plus et lorsque nous cliquons sur le signe plus, les données connexes apparaissent juste sous le signe plus dans une grille. la même chose que je veux réaliser dans WPF. s'il vous plaît aidez-moi avec l'exemple de code si possible. S'il vous plaît ne me réfère pas à une grille hiérarchique dans WPF. ma sortie serait différents moyens quand je clique sur signe plus du TreeView puis dynamiquement une grille ou listview montreront juste sous ce nœud. Merci.

+0

Voulez-vous dire http: // www .google.com/images? um = 1 & hl = fr & client = firefox-a & RLS = org.mozilla% 3Aen États-Unis% 3Aofficial & biw = 1920 & BiH = 847 rectorats = isch% 3A1 & sa = 1 & q = grille + groupant + contrôle + WPF & BTNG = Recherche & aq = f & IQA = & aql = & oq = Grille G Contrôle de roupie? –

Répondre

0

Vous pouvez y parvenir en

<Window.Resources> 
    <DataTemplate DataType="{x:Type local:Student}"> 
     <TreeView> 
      <TreeViewItem Header="{Binding Name}" ItemsSource="{Binding Marks}"></TreeViewItem> 
     </TreeView> 
    </DataTemplate> 
</Window.Resources> 
<Grid>   
    <TreeView> 
     <TreeViewItem Header="Master"> 
      <ListBox ItemsSource="{Binding Students}">      
      </ListBox> 
     </TreeViewItem> 
    </TreeView> 
</Grid> 

Et dans le code Derrière

public class Master 
{ 
    public ObservableCollection<Student> Students { get; set; } 
    public Master() 
    { 
     Students = new ObservableCollection<Student>(); 
     Students.Add(new Student() { Name = "Vinoth", Marks = new ObservableCollection<double> { 90, 95, 100, 80, 70 } }); 
     Students.Add(new Student() { Name = "Kumar", Marks = new ObservableCollection<double> { 50, 80, 60, 10, 20 } }); 
     Students.Add(new Student() { Name = "Sparrow", Marks = new ObservableCollection<double> { 70, 50, 72, 78, 89 } }); 
    } 
} 

public class Student 
{ 
    public string Name { get; set; } 
    public ObservableCollection<double> Marks { get; set; } 
} 

Reportez-vous à la capture d'écran Treeview/ListBox