将DataGridView添加到DataGridView时,为什么我的DataGridViewComboBoxColumn数据绑定不正确?

时间:2012-02-08 13:41:20

标签: c# winforms data-binding datagridview

我正在尝试将绑定DataGridViewComboBoxColumn添加到绑定DataGridView。我的组合框列工作在下拉列表中。但是,更改选定的值不会更新我的数据源。

以下是相关代码:

var SplitsView = new BindingList<SplitPaymentView>(
    Splits.Select(t => new SplitPaymentView(t)).ToList());

dgvSplits.DataSource = SplitsView;

var mediaCol = new DataGridViewComboBoxColumn() {
   Name = "Media",
   DataSource = AvailableMedias,
   DisplayIndex = 4,
   DisplayMember = "Description",
   ValueMember = "ID",
   ValueType = typeof(short),
   HeaderText = "Payment Media",
};

mediaCol.DataPropertyName = "MediaId";

dgvSplits.Columns.Add(mediaCol);

我的SplitPaymentView课程确实有public short MediaId {get;set;}属性。但是,当我在setter中设置断点时,在更改组合框的值时不会调用它。

然后我检查了新列的IsDataBound属性的值,它总是false

dgv中的其他(自动生成)列已正确绑定。我以为我只需设置列DataPropertyName并将其添加到dgv,但似乎我遗漏了一些东西。

我错过了什么?

0 个答案:

没有答案