问题标签 [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 回答
12853 浏览

c# - 如何将 DataGridViewComboBoxColumn 绑定到 OnChange 事件(C#)

我有一个标准DataGridView,我的最后一个专栏是DataGridViewComboBoxColumn. 我想添加一个事件,以便当该列中任何行的选定索引发生更改时,会触发一个事件并将该数据保存到 db。

我为此苦苦挣扎了一个小时左右,找不到任何会触发此问题的事件...

任何帮助,将不胜感激!!!

0 投票
1 回答
290 浏览

c# - 如果 datagridviewcombobox 的值不在 datagridviewcomboboxcolumn 数据源中,我该怎么办?

我遇到了下拉列表必须只包含“活动”对象的情况。但是,这并不意味着当前组合框值将在列表中(在该对象处于活动状态时选择它,但不再处于活动状态)。

就像现在一样,抛出了一个异常。我认为在 datagridview 的 dataerror 处理程序中,表示该值不在列表中。

我需要做的是找到一些在填充每个 datagridview 行时触发的事件,因此我可以检查组合框值是否在组合框数据源中......如果没有,我会添加它。这是我能看到的唯一解决方案。但问题是,我应该为此使用哪个事件处理程序?

最好,我希望能够概括此检查并将其放入从 datagridview 继承的类中。这样,我就不用再担心这个问题了。

有任何想法吗?

艾萨克

0 投票
1 回答
901 浏览

c# - C# DataGridView add row programmatically

I am building a dispatchers application for the Red Cross in my region. The dispatcher will see a list (DataGridView) with all units under his/her control. Each row (unit) has 7 columns.

The items in both ComboBoxes must be added programmatically. The items are listed in tables in the database. This is because the dispatcher (or supervisor) must be able to add items like locations, statuses etc.

How can I add these units to the DataGridView and have the correct Locatie and Status be selected? Both are integer columns in the units table in the database. The integers are the foreign keys which correspond with the primary keys in the tables "locaties" and "statussen."

First I thought I could use the DataSource property to add the units to the DataGridView. But I'm not sure how I can have the correct items selected in the ComboBoxes and have the items added to the ComboBoxes.

The database is a MySql database!

0 投票
1 回答
8872 浏览

vb.net - vb.net / DataGridView / ComboBoxCell?

我正在使用 vb.net 2010 和 winforms 和 DataGridView。

DataGridView 有一个 DataGridViewComboBox 列。当我使用 DGV 显示表单时,它会显示这个空网格,但包含 ComboBox 的列会显示下拉列表中的第一项。

在单击并选择之前,如何让 ComboBox 不显示任何内容?

0 投票
2 回答
26864 浏览

c# - DataGridViewComboBoxColumn 设置 selectedindex

嗨,我运行时将数据绑定到 datagridview 组合框。但是我如何让它自动显示第一个项目?我无法从 DataGridViewComboBoxColumn 中找到 selectedindex。

-- 更新 ---
我在解决方案 3 中看到有人这样做
链接
你确定我需要这么长的代码才能选择第一个项目吗??????

0 投票
1 回答
665 浏览

vb.net - 在 DataGridView 的同一列上添加多个数据源

我正在开发 VB .NET 2008。

目标:在 Windows.Forms.DataGridView 的单元格中绑定动态数据源,具体取决于上一列中的选择。网格必须有 7 列。如果对组合框列 2 或 4 进行了选择,则组合框列 3 和 5 的数据源将使用以先前选择作为参数的查询进行更改。

在第一次尝试开发此功能时,我尝试使用 Telerik.WinControls.UI.RadGridView 控件。我创建了一个带有组合框的自定义单元格模板,以便为同一列上的每个单元格提供不同的数据源。一切正常,但似乎是 RadGridView 中的某种错误,因为当组合框显示列表时,选择列表继续显示后,并没有按预期消失。

好的,经过几天与 RadGridView 的斗争,我放弃了,我尝试使用相同的策略但使用 Windows.Forms.DataGridView。我创建了两个类,一个继承自 DataGridViewComboboxCell,另一个继承自 ComboBoxColumn,以便插入我自己的组合框或有机会直接访问组合框值。但是显示的组合框是默认组合框,而不是我自己的组合框。

任何人都知道如何创建自定义组合框单元,但使用我自己的组合,并从外部访问这个组合?

提前致谢。

问候。

0 投票
1 回答
9049 浏览

data-binding - 将组合框列数据绑定到每行的数据网格视图(不是整个列)

有一些关于这个的帖子,但经过几个小时的搜索,我仍然找不到我需要的东西。

以下帖子中的答案几乎让我得到了我想要的: Combobox for Foreign Key in DataGridView

问题一:

从产品具有许多许可证的示例开始,我的数据库映射都是多对一的关系,这意味着我的许可证类包含对产品类的引用。License 类没有 ProductId 的属性,因为可以通过 Product 引用检索该属性。我不想用对 Product 和 ProductId 属性的引用来混淆 License 类,只是为了使 UI 中的绑定更容易。

因此,我无法将其设置DataPropertyName为 Id 字段。它必须是类引用名称,如下所示:

****更新**** 我能够通过将 Product.Id 指定为 DataPropertyName 来使其部分工作而无需创建 ProductId 属性,如下所示:

但是,这样做时,它破坏了数据绑定,导致我手动获取和设置单元格值。

我还看到了有关绑定到 DataGridView 单元格的帖子,但是当我这样做时数据绑定会中断,并且数据源本身永远不会更新:

也许我做错了什么,或者也许有不同的方式。有人可以在这里帮忙吗?

问题2:

如何为每个产品显示不同的许可证列表?换句话说,许可证的组合框列表对于网格中的每个产品都是不同的。我想使用数据绑定来做到这一点,所以我不必自己获取和设置值。

0 投票
1 回答
3490 浏览

vb.net - Datagridview DatagridviewComboboxColumn 编辑 DataBound

我有一个带有 datagridviewcomboboxcolumn 的 datagridview,我在该列上启用了编辑。只要没有为该列设置 datapropertyname,它就可以工作。

当设置了 datapropertyname 并且我在组合框中键入该项目时,它应该被建议,但是当按下 ENTER 时,之前选择的项目再次被选中。

当按下回车后未设置数据属性名时,建议的项目被选中。

我启用编辑的代码:

0 投票
3 回答
15417 浏览

vb.net - 获取 DataGridViewComboboxColumn SelectedValue (VB.Net)

我需要在 DataGridView 中获取 ComboBox 的选定值。我让它部分工作,但如果我更改网格中的另一个 ComboBox,我会得到一个空引用异常。这是我的代码:

这在第一次更改 ComboBox 时工作正常,但如果更改另一个 ComboBox,则会生成空引用异常。任何想法为什么会发生这种情况?注意:我在 MSDN 的讨论表单中找到了大部分代码。

谢谢!

彼得

0 投票
1 回答
645 浏览

c# - 带有组合框的 dataGridView

我的程序中有现有的组合框,它添加了一些事件,它的元素列表随时间变化。我有 dataGridView 和 dataGridViewComboBoxColumn。现在我想将我的组合框添加到 dataGridView 中的一个单元格中。我怎样才能做到?我尝试了几个例子,我在互联网上找到了,但我不工作..

编辑

我明白这是不可能的。那么,如何从 dataGridViewComboBoxColumn 向组合框添加事件?

编辑 2

它似乎工作得很好,但例如我不能用一些标签加入这个组合框。