WPF Datagrid组合框绑定问题

wwwo4jvm  于 2023-04-22  发布在  其他
关注(0)|答案(1)|浏览(148)

我有下面的代码,在组合框中选择后不更新数据网格。没有错误,只是没有更新。
我怀疑我需要以某种方式将DataGrid数据与Combobox数据链接起来以触发更新,但我不太确定如何操作。顺便说一句,等效的方法确实适用于List<string>,但不适用于List<Model>
有什么建议吗?
更新:集合CodeCategories是一个单独的List,只有Code_Category和Code_Category_Id。我使用一个单独的ViewModel来填充DataGrid,其中包含几个字段,包括要链接回的Code_Category_Id。

<telerik:GridViewDataColumn Width="350" Header="CODE CATEGORY" HeaderTextWrapping="Wrap" HeaderCellStyle="{StaticResource mainHeader}">
                <telerik:GridViewDataColumn.CellTemplate>
                    <DataTemplate>
                        <TextBlock Text="{Binding CODE_CATEGORY, Mode=TwoWay}"></TextBlock>
                    </DataTemplate>
                </telerik:GridViewDataColumn.CellTemplate>
                <telerik:GridViewDataColumn.CellEditTemplate>
                    <DataTemplate>
                        <telerik:RadComboBox ItemsSource="{Binding DataContext.CodeCategories, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" SelectedValue="{Binding CODE_CATEGORY_ID, UpdateSourceTrigger=PropertyChanged}" DisplayMemberPath="CODE_CATEGORY" SelectedValuePath="CODE_CATEGORY_ID">
                        </telerik:RadComboBox>
                    </DataTemplate>
                </telerik:GridViewDataColumn.CellEditTemplate>
            </telerik:GridViewDataColumn>
x7rlezfr

x7rlezfr1#

不是100%确定为什么,但这奏效了

<telerik:GridViewComboBoxColumn  Width="350"  Header="CODE CATEGORY" HeaderTextWrapping="Wrap" HeaderCellStyle="{StaticResource mainHeader}" 
DataMemberBinding="{Binding CODE_CATEGORY_ID}" 
ItemsSource="{Binding DataContext.CodeCategories, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
DisplayMemberPath="CODE_CATEGORY" 
SelectedValueMemberPath="CODE_CATEGORY_ID" />

相关问题