2011-07-13 6 views
0

mon treeview lié fonctionne très bien avec la propriété string mais pas avec une "propriété d'une autre propriété".chemin de liaison dans Silverlight treeview

Mon code:

Public class A 
    Public data as string 
End Class 

Public Class T 
    Public o As A 
    Public ReadOnly Property desc As String 
     Get 
      Return o.data 
     End Get 
    End Property 
    Property children As New ObservableCollection(Of T)() 
End Class 

XAML qui travaillent:

<sdk:HierarchicalDataTemplate x:Key="NameTemplate" 
     ItemsSource="{Binding Path=children}" > 
     <TextBlock Text="{Binding Path=desc}" FontWeight="Bold" /> 
    </sdk:HierarchicalDataTemplate> 

XAML fonctionne pas:

<sdk:HierarchicalDataTemplate x:Key="NameTemplate" 
     ItemsSource="{Binding Path=children}" > 
     <TextBlock Text="{Binding Path=o.data}" FontWeight="Bold" /> 
    </sdk:HierarchicalDataTemplate> 

Quelle est l'erreur? merci.

+0

A.data n'est pas une propriété, si je comprends bien la syntaxe vb. – vorrtex

Répondre

1

Vous pouvez uniquement lier des propriétés dans Silverlight. Votre o n'est pas une propriété pour le moment, vous devez définir des setters et getters.

Je ne suis pas familier avec vb, donc je ne suis pas sûr de la syntaxe correcte. Soit le définir comme une propriété ou définir un ensemble et obtenir pour o.