0

在此处输入图像描述

在下面的图片中,我有 Reason 作为组合框,它有三个选项。在选择第一个值(例如内部返工)时,第二列也是组合框的责任方应该填充列表集合,等等从原因组合框中选择另一个值责任方应该填充另一个列表集合。

由于我已尝试对 gridview 进行最终编辑并且它正在显示价值,但如果在下一行我更改我的返工组合框值,责任方的先前值不会保留其值。

那么我怎样才能防止这种情况发生。

所以任何帮助表示赞赏。

4

2 回答 2

0

您是否尝试根据原因中选择的值绑定其他两个组合框?如果是这样,我会CellValueChanged在数据网格的事件中使用该事件,您可以以编程方式构建一个列表并对其进行数据绑定。如果这是您想要做的,我将在此处发布一个示例,如果不是,请澄清,以便我提供帮助。

Private Sub dgVendors_CellValueChanged(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgVendors.CellValueChanged

        If dgVendors.Columns(e.ColumnIndex).HeaderText = "Reason" Then

            CType(dgVendors.Rows(e.RowIndex).Cells(""), DataGridViewComboBoxCell).DataSource = Nothing
            CType(dgVendors.Rows(e.RowIndex).Cells(""), DataGridViewComboBoxCell).DisplayMember = ""
            CType(dgVendors.Rows(e.RowIndex).Cells(""), DataGridViewComboBoxCell).ValueMember = ""

        ElseIf dgVendors.Columns(e.ColumnIndex).HeaderText = "Responsible Party" Then

            CType(dgVendors.Rows(e.RowIndex).Cells(""), DataGridViewComboBoxCell).DataSource = Nothing
            CType(dgVendors.Rows(e.RowIndex).Cells(""), DataGridViewComboBoxCell).DisplayMember = ""
            CType(dgVendors.Rows(e.RowIndex).Cells(""), DataGridViewComboBoxCell).ValueMember = ""

        End If

End Sub
于 2013-10-30T18:58:05.323 回答
0

如果要处理下拉列表的选择更改事件,可以处理 DataGridView 的 EditingControlShowing 事件

还有一个 MSDN 页面可能会对您有所帮助。另外,请确保更改DataSourceDataGridViewComboBoxCellCurrentRow,而不是DataGridViewComobBoxColumn

于 2013-10-30T19:04:34.927 回答