I ont les 2 catégories suivantes:problème avec Ayant TreeView et Multilist données hiérarchiques
public class DeviceGroup
{
public String Name { get; set; }
public ObservableCollection<DeviceGroup> DeviceGroups { get; set; }
public ObservableCollection<Device> Devices { get; set; }
public DeviceGroup()
{
Name = String.Empty;
DeviceGroups = new ObservableCollection<DeviceGroup>();
Devices = new ObservableCollection<Device>();
}
}
public class Device
{
public String Name { get; set; }
}
Ma classe principale a une ObservableCollection.
Dans mon Xaml - je peux créer un TreeView facilement si je précise juste devicegroup dans mon HierachicalDataTemplate, comme suit:
<Window.Resources>
<ResourceDictionary>
<DataTemplate DataType="{x:Type local:Device}">
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
<HierarchicalDataTemplate DataType="{x:Type local:DeviceGroup}" ItemsSource="{Binding DeviceGroups}">
<StackPanel>
<TextBlock Text="{Binding Name}"/>
</StackPanel>
</HierarchicalDataTemplate>
</ResourceDictionary>
</Window.Resources>
<Grid>
<TreeView ItemsSource="{Binding DeviceGroups}"/>
</Grid>
La question est: Comment puis-je sélectionner la collection Devices ainsi que la devicegroup? Je voudrais que les périphériques apparaissent quelque chose comme Windows Explorer (répertoires et fichiers). Y a-t-il une solution Xaml à ce problème? Ou devrais-je créer les TreeViewItems dans le codebehind. Merci.