En XAML J'ai un combobox défini comme:C# MVVM Combobox
<ComboBox x:Name="UsernameComboBox"
ItemsSource="{Binding Users}"
DisplayMemberPath="Username"
SelectedItem="{Binding Path=SelectedName, Mode=TwoWay}"/>
En ce moment, il ne montre aucun élément sélectionné par défaut.
Je remplir la zone de liste déroulante avec une liste:
public List<User> Users
{
get
{
return _userRepository.RetrieveUsers();
}
}
public List<User> RetrieveUsers()
{
_users = (from Users in _db.Users select Users).ToList();
return _users;
}
Les utilisateurs appropriés étant le ItemSource pour le combobox. Puis, dans le XAML, j'ai défini SelectedItem et l'ai lié à une propriété appelée Nom sélectionné.
Dans le code, cela ressemble:
private User _selectedName;
public User SelectedName
{
get
{
return _selectedName;
}
set
{
if (_selectedName == value) return;
_selectedName = value;
OnPropertyChanged("SelectedName");
}
}
Comment puis-je obtenir mon combobox pour montrer un selectedItem au démarrage?
Merci. Très belle réponse en effet. Je vous remercie en particulier de souligner que je continue d'interroger la base de données. Pour cette application au moins, il est très inutile. Aussi, je vais voir comment cela affectera la combobox en utilisant une liste "statique". Merci encore. –
Pas de problème - s'il vous plaît upvote et marquer comme réponse si cela vous a aidé. – ColinE
Terminé. La solution a fonctionné comme un charme. Je peux mourir un homme heureux. –