Ich habe ein UI-Problem mit RadListBox und überprüfe Elemente in einer Checkbox. Das Problem ist, dass meine Auswahl in der Checkbox kein Ereignis auslöst, da die Auswahl in der RADListBox diese auslöst. Und der Benutzer muss das Kontrollkästchen aktivieren und dann auf das Element in der Radlistenbox klicken (klicken), um das SelectedValue-Ereignis davon auszulösen. Ich möchte es so haben, dass, wenn der Benutzer eine Checkbox aktiviert, das Selectedvalue Ereignis der RadListBox auch aufgerufen wird. Hier ist meine WPF-Code: Telerik RADListBox mit CheckBox - Wie ein Kontrollkästchen in Checkbox ausgelöst wird, um das RADListBox SelectedValue-Ereignis aufzurufen
<telerik:RadListBox Grid.Row="1" x:Name="ExportersList" ItemsSource="{Binding Exporters}" Style="{StaticResource ModalListBoxStyle}"
Visibility="{Binding ExportComplete, Converter={StaticResource InverseBoolToVisibilityConverter}}"
SelectedValue="{Binding ExportFormatName, Mode=TwoWay}" SelectedValuePath="Name" SelectionMode="Multiple">
<telerik:RadListBox.ItemTemplate>
<DataTemplate DataType="{x:Type interfaces:BaseTourSheetExporterType}">
<StackPanel Orientation="Horizontal">
<CheckBox IsChecked="{Binding IsExporterChecked}" />
<TextBlock Text="{Binding Name}" Margin="5" />
</StackPanel>
</DataTemplate>
</telerik:RadListBox.ItemTemplate>
</telerik:RadListBox>
Bitte beachten Sie, dass das Ereignis SelectedValue auf eine Eigenschaft in meiner Klasse gebunden ist, und wenn es geht/Sets Ich Aktivierung/Deaktivierung eine andere Taste. Ich weiß nicht, wie ich mein Checkbox IsChecked-Ereignis bekomme (wenn ein Benutzer das Kontrollkästchen aktiviert oder deaktiviert), um das selectedvalue-Ereignis der Radlistbox auszulösen und meinen Benutzer im Grunde nur ein Kontrollkästchen zu aktivieren/deaktivieren, das eine andere get/set-Eigenschaft auslöst (ExportFormatName). Auf diese Weise kann der Benutzer dies tun, ohne das Element erneut in der Radlistenbox auszuwählen (indem außerhalb des Kontrollkästchens geklickt wird), um das get/set -Eigenschaftsereignis auszulösen. Bitte helfen Sie mir mit diesem WPF-Teil.
Nur nebenbei bemerkt bin ich absichtlich die CheckBox IsChecked zu einer Klasse namens BaseTourSheetExporterType, die einen Mitglied Booleschen Wert (IsExporterChecked) enthält. Dies bestimmt, ob es überprüft wurde oder nicht (diese Klasse und mein Member müssen sich meine Änderungen merken, wenn ich das Fenster wieder öffne). noch bekomme ich einen Anruf nicht an der Get/Set ExportFormatName Eigenschaft
Ich denke, Rachel Antwort wird Ihnen helfen. http://stackoverflow.com/questions/23295857/c-sharp-wpf-listbox-checkbox-binding-ische-to-a-field-and-isselected –
@AyyappanSubramanian Dies hat Teil behoben das Problem, ich habe Rachels Code und der Code von dem Benutzer, der die Frage gepostet hat, aber ich sehe eine andere fehlende Sache ... bitte sehen Sie meine Antwort –
Versuchen Sie, Mode = TwoWay zur Bindung hinzuzufügen. Überprüfen Sie auch, ob Sie INotifyPropertyChanged implementiert haben. –