问题标签 [datagridviewcombobox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1324 浏览

c# - Datagridview 在更改列组合框值时执行代码

我正在尝试在更改该 datagridview 列中的组合框值时重新加载 datagridview。我知道如何重新加载,但我无法触发动作。我应该在这个特定的单元格中寻找值变化还是组合框动作有变化?

0 投票
1 回答
2530 浏览

c# - C# Winforms DatagridviewCombobox 异常字符串无法转换为类

从嵌入在数据网格视图中的数据网格视图组合框(下拉菜单)控件中选择新值时遇到异常。组合框由 BindingSource 填充,其中填充了我的类的实例。我可以正确显示菜单中的选项,然后选择一个,但是将焦点更改为新控件(我猜是提交更改)会导致出现异常:从 System.String 到 myclass 的无效转换。堆栈跟踪(如果我使用该词正确)显示源是

System.Windows.Forms.DataGridView.PushFormattedValue 级联到 System.Convert.DefaultToType

下面是更明确的解释(对不起,它太长了,但我想让它可重现):

我有一个名为 Occupant 的空类,没有属性(当 Occupant 也有一个字符串 Name 属性时存在问题,所以不是那样)。我有一个名为 OccupantSource 的 BindingSource,它的 DataSource 指向 Occupant。

我还有一个名为 Car 的类,有一个名为 Driver 的 Occupant 属性。

在我的 Form_Load() 中,我调用了 OccupantSource.AddNew() 两次,并调用了 CarSource.AddNew() 一次。

我有一个 DataGridView 控件,它的 DataSource 是 CarSource(由 Cars 组成的 BindingSource)。DGV 有一列,显示 CarSource 中汽车的 Driver 属性。它是一个 DataGridViewComboBoxColumn,DataPropertyName 设置为驱动程序。

所以我想要的是在 Datagridview 中显示汽车行,其中一列是一个组合框,我可以下拉并从现有的 Occupant 实例中选择一个驱动程序。但我得到了例外。

这是我误会了吗?不能使用类的实例来填充 DataGridViewComboBox 吗?

0 投票
1 回答
461 浏览

c# - 将 DataGridViewComboBoxColumn 用于不同的选项

我正在修改 .NET 3.5 中的 Winforms 应用程序。

我有一个 DataGridViewComboBoxColumn 填充了一些硬编码选项,如下所示。

我想让这些选项的选择不同,这样一旦网格中存在一个选项,就不能再次选择它(用户应该编辑当前行或删除并重新输入它)。

有没有快速的方法来做到这一点?

我想我会分享我的最终解决方案,以防它帮助其他人。我的 CellValidating 事件处理程序如下:

我本来想使用 LINQ 来计算实例的数量,但我仍在学习这一点,所以我坚持我所知道的。

0 投票
1 回答
434 浏览

c# - datagridview中的组合框,按键旋转

我遇到了一个问题。我有一个 datagridview 和一个包含 DataGridViewComboBoxColumn 的列。

组合框的数据源是一个类似于以下内容的列表:Apa Arne Mia

当用户输入一个组合框并按下 A 键时,“Apa”将作为建议出现。正是我想要的。问题是,如果用户在下面的行中标记例如组合框并按下 A 键“Arne”将被建议。它循环,或者我应该说循环遍历列表。如果我每次进入组合框时都按 A,我希望建议将“Apa”作为首选。

这个问题有可能解决吗?

最好的问候马丁

0 投票
1 回答
5287 浏览

c# - 编辑时更改为 ComboBox 的 DataGridViewTextBoxColumn

我想显示一个带有看起来像 DataGridViewTextBoxColumn 的 ComboBox 列的 DataGridView。

在 DataGridView 中,我显示了 DataGridViewTextBoxColumn,当​​用户在此列中的一个单元格上设置焦点时,该单元格应更改为 ComboBox。

我不知道必须重写哪个函数。

在 DataGridTextBoxColumn 中有功能 Edit,我可以在此功能期间绘制我的组合框吗?

0 投票
2 回答
3020 浏览

vb.net - 如何使 DataGridViewComboBoxColumn 的 ComboBox 接受用户新项目?

使用DataGridViewComboBoxColumn,目标是让ComboBoxes接受用户的新项目以及选择已经存在的项目的可能性。

我知道在运行时使用DataGridView的EditingControlShowing事件来更改DataGridViewComboBoxEditingControl的DropDownStyle以允许这样做,但我想知道这是否可以在较低级别完成。

我现在正在做的是扩展DataGridViewComboBoxColumnDataGridViewComboBoxCellDataGridViewComboBoxEditingControl,希望在我实例化它的那一刻改变EditingControl 的 DropDownStyle。到目前为止,没有运气。

调试器显示正在执行正确的分配,但尽管如此,DropDownStyleEditingControlShowing处弹出(使用该事件进行调试)作为DropBoxList,而不是DropBox,这是意图。

以下是课程:

0 投票
2 回答
1435 浏览

c# - 焦点时DataGridView ComboBox不保存

在 DataGridView ComboBox 中选择一个值并单击 bindingnavigator 中的保存按钮后,数据库中的数据不会更新。用户必须失去焦点才能更新数据。有没有办法解决这个问题?

0 投票
0 回答
782 浏览

.net - 当 DataGridView 组合框选择更改时,ListBox 控件更改选择

好的,这种行为看起来很奇怪。我有一个绑定到字符串 IBindingList 的 ListBox。在它旁边的 DataGridView 中,我添加了一个绑定到同一个列表的组合框列,DataBindingComplete事件中包含此代码。

表单加载时,ListBox 数据源设置为相同的列表对象。

奇怪的是,每次我在网格的任何行中更改组合框选择时,列表框中的选定项目都会更改为匹配。不会发生相反的行为。我没有在代码中做任何事情来故意促进这一点。

什么可能导致这种情况?这对我来说没有任何意义。

更新,来自 lstTrucks.SelectedValueChanged 事件的堆栈跟踪,

这是 IBindingList 的代码:

PackingList.TrucksGenericBindingList(Of String)

0 投票
1 回答
1271 浏览

c# - 在数据绑定时检索 datagridviewcombobox 后面的数据行

我有一个数据绑定 DataGridView。它的列之一是 DataGridViewComboBox。DataGridViewComboBox 也是数据绑定的。一切正常,直到我希望检索 DataGridViewComboBox选定项后面的 DataRow (不是 DataGridView 的 DataRow,而是填充组合框的 DisplayMember 和 ValueMember 的数据行!)。

我怎样才能做到这一点?我需要这个,因为我需要在 DisplayMember 和 ValueMember 旁边显示一大堆数据,并且这些数据存在于 DataGridViewComboBox 绑定到的 DataTable 的数据行中。

提前感谢您的帮助。

丹尼尔

0 投票
2 回答
5759 浏览

c# - “DataGridViewComboBoxCell 值无效。” 属性数据源

我有一个更新包含类型 DataGridViewComboBoxCell 的列的方法,早期 ComboBoxCell 为空,选择产品并在添加新记录时更新 ComboBoxCell 做得很好,但是当我修改它时会发送异常:“DataGridViewComboBoxCell 值无效" 如果您在重新分配 DataSource 属性时是这样,则不会。

这里的方法:

verique 没有空值,引用很好

非常感谢您的帮助