Ich möchte Listbox mit Checkboxen basierend auf Enum erstellen. Meine Enum enthält Flags. Jetzt, wenn einige checkbox checked/unchecked, möchte ich hinzufügen/Sub-Wert mit diesem Kontrollkästchen verknüpft. ViewModel enthält eine Eigenschaft, die den aktuellen Wert der Summe der Flags speichern soll. Wie abonniere ich das Checked/Unchecked Event und wie bekomme ich den Wert, den das Checkbox enthält. HierListBox mit CheckBoxen basierend auf enum
ist der Code:
<Page.DataContext>
<self:NewUserViewModel/>
</Page.DataContext>
<Page.Resources>
<ObjectDataProvider x:Key="permEnum" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="enums:Permissions"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</Page.Resources>
<Grid Background="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}">
<ListBox x:Name="PermissionLbox" ItemsSource="{Binding Source={StaticResource permEnum}}" Height="75" Margin="10,117,10,0" VerticalAlignment="Top">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding .}"></CheckBox>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
Aber wenn ich zwei Checkboxen einstelle, dann wird nur eine Flagge in der Property sein. stattdessen möchte ich eine Summe von ihnen speichern. – igorr