我在我的项目中遇到了绑定问题。我有一个数据网格,默认情况下我定义了 2 列。ItemsSource 绑定到列表 (ListeGrilleTarifaire),列的内容绑定到包含在第一个列表中的第二个列表 (ListeTranche) 的元素。
<techuc:DataGridM Name="dg_HeaderTranche" AutoGenerateColumns="False" ItemsSource="{Binding ListeGrilleTarifaire}" CanUserAddRows="False" CanUserDeleteRows="False" Visibility="{Binding accesGrilleMultiDepartement}" Height="42" Margin="440,0,0,0" VerticalAlignment="Top">
<DataGrid.Columns>
<DataGridTextColumn Header="{x:Static trad:Langues.lblTranche1}" Binding="{Binding ListeTranche[0],Mode=TwoWay}" Width="80"/>
<DataGridTextColumn Header="{x:Static trad:Langues.lblTranche2}" Binding="{Binding ListeTranche[1],Mode=TwoWay}" Width="80"/>
</DataGrid.Columns>
我希望有可能使用按钮添加列并将新列与第二个列表绑定。
我的代码在后面,当我单击按钮时,我将一个元素添加到我的第二个列表中,并执行以下代码
DataGridTextColumn textColumnTranche = new DataGridTextColumn();
textColumnTranche.Header = "Tranche X";
textColumnTranche.Binding = new Binding("ListeTranche[3]");
dg_HeaderTranche.Columns.Add(textColumnTranche);
我的新列已创建,我可以填充它,但是当我将数据保存在数据库中时,值仍为 0。我认为这是因为我没有将绑定模式配置为 TwoWay,但我不知道该怎么做后面的代码。
我的列表在 ViewModel 中定义和使用。