我有一个SQL数据库,包含表Jars和JarTypes。我需要在DataGrid中显示数据。我还必须能够编辑行。我认为DataGridComboBoxColumn非常适合这项工作。如何使用JarTypes.Type填充ComboBox并将TypeId放回Jars.TypeId。这些表存储在DataTables JarsDt和TypeDt
中Jars(JarsDt)
JarTypes(TypeDt)
<DataGrid x:Name="JarDataGrid"
AutoGenerateColumns="False"
IsReadOnly="False"
HorizontalAlignment="Stretch"
Margin="10,35,2,36.8">
<DataGrid.Columns>
<DataGridTextColumn Header="#"
IsReadOnly="True"
Binding="{Binding JarId}" />
<DataGridTextColumn Header="Mengde"
Binding="{Binding Amount}" />
<DataGridComboBoxColumn x:Name="combo"
Header="Glass"
SelectedValueBinding="{Binding TypeId}"
DisplayMemberPath="{Binding Type}"/>
<DataGridTextColumn Header="Mengde levert"
IsReadOnly="True"
Binding="{Binding AmountDelivered}" />
答案 0 :(得分:0)
将ItemsSource
的{{1}}属性设置为Jars列表,将DataGrid
的{{1}}属性设置为JarTypes列表。
您可以使用ItemsSource
或代码直接设置ComboBox
在XAML中执行此操作。
您需要设置CollectionViewSource
的{{1}}属性。
此外JarDataGrid.ItemsSource = ListOfJars
是字符串属性,因此不使用绑定。
在你的情况下,它将是:
SelectedValuePath