2
我有保存用户DataGridTextColumn绑定到IDictionary的
class User
{
public int Id{ get; set; }
public UserType UserType{ get; set; }
}
的收集和枚举
enum UserType
{
Admin,
Moderator,
User,
Guest
}
,然后我有可以从视图模型被访问的枚举称为UserTypeMap一个映射一个ObservableCollection
public class UserListViewModel : INotifyPropertyChanged
{
......
public ObservableCollection<User> Users
{
get{ return this.users; }
set{ this.users = value; this.InvokePropertyChanged("Users");
}
public IDictionary<UserType, string> UserTypeMap{ get; set; }
{
get{ return this.userTypeMap; }
set{ this.userTypeMap= value; this.InvokePropertyChanged("UserTypeMap");
}
....
}
在客户端,我做了一个DataGrid,它包含用户列表
<sdk:DataGrid ItemsSource="{Binding Users}">
<sdk:DataGridTextColumn Binding="{Binding Id}" Header="ID"/>
<sdk:DataGridTextColumn Binding="{**??????????**}" Header="Type"/>
</sdk>
我不知道该怎么字典值结合DataGridTextColumn, 我尝试过使用组合框,使用的SelectedValue和ItemsSource时,它的工作, 但我想以显示它在文本框中/标签,而不是组合框...
是否有一个纯xaml的方式(不是页面背后的代码)来做到这一点?
感谢, 请问
我不想显示键(枚举),我想显示的值是字符串。例如,如果我有密钥管理员,我想显示“管理员”,但无论如何 – 2012-04-18 14:15:27