我试图将一个ObservableCollection绑定到WPF中的treeview。它确实是一种工作,但不像我想的那样。WPF Treeview绑定
这是结合我已经安装
<TreeView Height="250" ItemsSource="{Binding Path=TheUsers}" VerticalAlignment="Bottom" Width="500" Margin="0,39,0,0">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Path=Permission}">
<TextBlock Text="{Binding}" />
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
这是它被绑定到集合:
ObservableCollection<UserViewModel> theUsers;
public ObservableCollection<UserViewModel> TheUsers
{
get
{
return theUsers;
}
set
{
theUsers = value;
OnPropertyChanged("TheUsers");
}
}
这是集合中的对象:
public class UserViewModel
{
string userName = null;
public string UserName
{
get
{
return userName;
}
set
{
userName = value;
OnPropertyChanged("UserName");
}
}
int permCount = 0;
public int PermCount
{
get
{
return permCount;
}
set
{
permCount = value;
OnPropertyChanged("PermCount");
}
}
List<string> permission = null;
public List<string> Permission
{
get
{
return permission;
}
set
{
permission = value;
OnPropertyChanged("Permission");
}
}
这是它显示
我想它做的是显示UserViewModel用户名和权限List<string>
的项目,如儿童。什么是正确的方法来做到这一点?
先谢谢了!
改变代码来反映意见,更新问题 – rreeves 2012-01-27 18:31:14
@BatMasterson:我更新了我的答案 – ChrisWue 2012-01-27 22:16:39