Liaison d'une énumération à une ComboBox dans WPF : une approche claire et concise
Pour ceux qui recherchent une approche simple pour lier une énumération à une ComboBox dans WPF, cet article fournira un résumé succinct guide.
Problème :
Tentative de lier une énumération à une ComboBox à l'aide de la propriété BindingPath, pour constater que les valeurs de l'énumération ne sont pas visibles en tant qu'éléments dans le ComboBox.
Solution :
Liaison basée sur le code :
Dans le gestionnaire d'événements Window Loaded, utilisez ce code :
yourComboBox.ItemsSource = Enum.GetValues(typeof(EffectStyle)).Cast<EffectStyle>();
Ce code récupère les valeurs enum et les définit comme ItemsSource pour le ComboBox.
Liaison XAML :
Pour lier en XAML, utilisez un ObjectDataProvider :
<Window ...> <Window.Resources> <ObjectDataProvider x:Key="dataFromEnum" MethodName="GetValues" ObjectType="{x:Type System:Enum}"> <ObjectDataProvider.MethodParameters> <x:Type TypeName="StyleAlias:EffectStyle"/> </ObjectDataProvider.MethodParameters> </ObjectDataProvider> </Window.Resources> <Grid> <ComboBox ItemsSource="{Binding Source={StaticResource dataFromEnum}}" SelectedItem="{Binding Path=CurrentEffectStyle}" /> </Grid> </Window>
N'oubliez pas de spécifier l'espace de noms et l'assembly à l'aide de xmlns .
Cette approche fournit un moyen clair et simple de lier une énumération à une ComboBox WPF, sans les complexités des chaînes d'affichage supplémentaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!