问题可能需要重新措辞,但这是问题,我使用的代码发布在
下面一些背景,以便理解我有一个数据表绑定到datagridview与代码中的列名列名称我将只显示一部分列名称以节省空间,这部分工作,但它需要显示问题
DataGridView3.DataSource = fieldDT
DataGridView3.AutoGenerateColumns = True
fieldDT.Columns.Add("Column Name", System.Type.GetType("System.String"))
DataGridView3.Columns(0).Width = 123
fieldDT.Columns.Add("Field", System.Type.GetType("System.String"))
DataGridView3.Columns(1).Width = 86
'columns 2 through 12 are here
fieldDT.Columns.Add("Format", System.Type.GetType("System.String"))
DataGridView3.Columns(13).Width = 45
fieldDT.Columns.Add(" ", System.Type.GetType("System.String"))
DataGridView3.Columns(14).AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
我还有一个组合框,我希望在上面的数据表代码中填充列名,以便下一步显示
ComboBox10.DataSource = fieldDT
ComboBox10.DisplayMember = "Column Name"
ComboBox10.ValueMember = "Column Name"
组合框正确填充数据表
中的所有列名现在是我需要一种解决方法的问题出现了,
如果我在datagridview中选择一行,它会改变组合框中的显示值,如果我在组合框中选择一个不同的值,它会更改datagridview中的选定行,我觉得这是默认设计,但希望它可以改变
虽然组合框需要列列表,并且如果有人在datagridview中添加了另一行,我需要更新它,我不希望它们以彼此改变的方式绑定。
组合框用于其他目的,需要选择一个可用的列名
答案 0 :(得分:1)
我做了建议的更改,现在按预期工作 感谢
Dim DV_fields As DataView = fieldDT.DefaultView
ComboBox10.DataSource = DV_fields
ComboBox10.DisplayMember = "Column Name"
ComboBox10.ValueMember = "Column Name"
ComboBox10.Text = ""