我有兩個對象:UserDto和RoleDto。用戶有一個屬性是RoleDto。 在我的視圖模型我有以下幾點:Wpf組合框選定項目不起作用
public UserDto User
{
get { return _user; }
set
{
if (_user == value) return;
_user = value;
User.PropertyChanged += UserPropertyChanged;
OnPropertyChanged("User");
}
}
private UserDto _user;
public IEnumerable<RoleDto> Roles { get; set; } //I load all available roles in here
在視圖中,我希望用戶所屬選擇角色。這是我如何定義組合框在視圖:
<ComboBox Grid.Row="3" Grid.Column="1" Margin="5" ItemsSource="{Binding Roles}" SelectedItem="{Binding User.Role, Mode=TwoWay, ValidatesOnDataErrors=True, UpdateSourceTrigger=PropertyChanged}" DisplayMemberPath="Description" />
如果我嘗試創建一個新用戶,並從組合框的作用,它被正確綁定到用戶。問題是,當我加載一個已經存在的用戶時,該角色不會顯示在組合框中(即使用戶定義了一個角色)。
請幫忙嗎?
在此先感謝
我推斷,當你(userdto)用戶有數據或沒有你的組合框綁定到角色。您必須分配組合框selectedItem。 – Eldho