Liaison d'une énumération à un contrôle ComboBox WPF
Dans les environnements de développement d'interface (IDE) tels que Visual Studio, la liaison d'énumérations à des contrôles combobox peut présenter défis. Cet article fournit un guide simple pour réaliser cette liaison sans complexités supplémentaires.
Pour afficher les valeurs d'énumération directement dans une liste déroulante sans utiliser de chaînes d'affichage, suivez ces étapes :
À partir du code :
yourComboBox.ItemsSource = Enum.GetValues(typeof(EffectStyle)).Cast<EffectStyle>();
En XAML :
<ComboBox ItemsSource="{Binding Source={StaticResource dataFromEnum}}" SelectedItem="{Binding Path=CurrentEffectStyle}" />
Cependant, pour l'approche XAML, un ObjectDataProvider est requis pour créer un objet disponible comme source de liaison :
<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>
Notez la déclaration xmlns :
xmlns:System="clr-namespace:System;assembly=mscorlib" xmlns:StyleAlias="clr-namespace:Motion.VideoEffects"
Cette ligne mappe les espaces de noms et les assemblys, comme décrit dans la documentation Microsoft Developer Network (MSDN). La mise en œuvre de ces étapes vous permettra de lier avec succès des énumérations à un contrôle combobox dans WPF, offrant ainsi une approche plus propre et plus simple.
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!