如何从 WPF 工具包的 CheckComboBox 中获取选中项的列表
How to get list of checked items from WPF Toolkit's CheckComboBox
我不知道如何做这么简单的事情,比如从 WPF 工具包 CheckComboBox
中获取所有选中项的列表。
查看:
<xctk:CheckComboBox DisplayMemberPath="Name"
ItemsSource="{Binding RouteSheetRecordOperations, Mode=OneWay}"
SelectedItemsOverride="{Binding SelectedRouteSheetRecordOperations, Mode=OneWayToSource}" />
查看模型:
Public ReadOnly Property RouteSheetRecordOperations As New ObservableCollection(Of RouteSheetRecordOperation)
Property SelectedRouteSheetRecordOperations As List(Of RouteSheetRecordOperation)
Get
Return _selectedRouteSheetRecordOperations
End Get
Set
_selectedRouteSheetRecordOperations = Value
End Set
End Property
主要问题是在 SelectedRouteSheetRecordOperations
属性 的 setter 中,值始终为 Nothing(空)。
从 Binding
中删除 Mode=OneWayToSource
:
<xctk:CheckComboBox DisplayMemberPath="Name"
ItemsSource="{Binding RouteSheetRecordOperations, Mode=OneWay}"
SelectedItemsOverride="{Binding SelectedRouteSheetRecordOperations}" />
另请注意,当您 select CheckComboBox
中的项目时,SelectedRouteSheetRecordOperations
属性 的 setter 不应被击中。一个项目应该被添加到源集合中,所以您也可以删除 setter 并且您可能想要 return 和 ObservableCollection(Of RouteSheetRecordOperation)
。
另请注意 属性 必须是 public
。
试试这个连同上面的 XAML 标记:
Private _selectedRouteSheetRecordOperations As New ObservableCollection(Of RouteSheetRecordOperation)
Public ReadOnly Property SelectedRouteSheetRecordOperations As ObservableCollection(Of RouteSheetRecordOperation)
Get
Return _selectedRouteSheetRecordOperations
End Get
End Property
我不知道如何做这么简单的事情,比如从 WPF 工具包 CheckComboBox
中获取所有选中项的列表。
查看:
<xctk:CheckComboBox DisplayMemberPath="Name"
ItemsSource="{Binding RouteSheetRecordOperations, Mode=OneWay}"
SelectedItemsOverride="{Binding SelectedRouteSheetRecordOperations, Mode=OneWayToSource}" />
查看模型:
Public ReadOnly Property RouteSheetRecordOperations As New ObservableCollection(Of RouteSheetRecordOperation)
Property SelectedRouteSheetRecordOperations As List(Of RouteSheetRecordOperation)
Get
Return _selectedRouteSheetRecordOperations
End Get
Set
_selectedRouteSheetRecordOperations = Value
End Set
End Property
主要问题是在 SelectedRouteSheetRecordOperations
属性 的 setter 中,值始终为 Nothing(空)。
从 Binding
中删除 Mode=OneWayToSource
:
<xctk:CheckComboBox DisplayMemberPath="Name"
ItemsSource="{Binding RouteSheetRecordOperations, Mode=OneWay}"
SelectedItemsOverride="{Binding SelectedRouteSheetRecordOperations}" />
另请注意,当您 select CheckComboBox
中的项目时,SelectedRouteSheetRecordOperations
属性 的 setter 不应被击中。一个项目应该被添加到源集合中,所以您也可以删除 setter 并且您可能想要 return 和 ObservableCollection(Of RouteSheetRecordOperation)
。
另请注意 属性 必须是 public
。
试试这个连同上面的 XAML 标记:
Private _selectedRouteSheetRecordOperations As New ObservableCollection(Of RouteSheetRecordOperation)
Public ReadOnly Property SelectedRouteSheetRecordOperations As ObservableCollection(Of RouteSheetRecordOperation)
Get
Return _selectedRouteSheetRecordOperations
End Get
End Property