问题标签 [datagridviewcomboboxcell]

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 投票
1 回答
3623 浏览

vb.net - 尝试将 DataSource 重新绑定到 DataGridViewComboBoxCell 时出错?

我有一个带有两个 DataGridViewComboBoxColumns 的 DataGridView。我想使用第一列中的选定项目以逐行触发第二列中项目的重新填充。

这是我到目前为止的代码。“addlInfoParentCat”标识第一列,currentRow.Cells.Item(1) 是我要重新填充的 DataGridViewComboBoxCell。ExtEventAdditionalInfoType 是我定义的包含字符串/值对的类型。

基本上我看到的是绑定在第一次时效果很好。当我在第一列中选​​择一个项目时,它会在第二列中正确填充这些项目。我可以向 DataGridView 添加行并重复该过程。

当我在第二列已经绑定后尝试更改第一列项目时,问题就来了。我得到一连串的对话框,其中包含以下内容:

System.ArgumentException:DataGridViewComboBoxCell 值无效。

知道为什么会这样吗?提前致谢!

更新 CodeByMoonlight 的建议似乎有效。

我在重新绑定之前清除了 DataGridViewComboBoxCell 的值:

0 投票
3 回答
12996 浏览

vb.net - 如何在 DataGridViewTextBoxCell 和 DataGridViewComboBoxCell 之间切换?

我想要一个有两列的 DataGridView。第一列将始终为 DataGridViewComboBoxColumn 类型。根据该列中的选择,我希望能够将第二列中的相应单元格更改为 DataGridViewComboBoxCell 或 DataGridViewTextBoxCell。

我在想我只需要制作 DataGridViewColumn 类型的第二列,但不了解如何动态更改单元格类型的机制。

我在 Visual Studio 2005 中使用 VB.NET。

提前致谢!

更新: 我想,解决它的一种方法是将第二列设置为 DataGridViewComboBoxColumn,并更改单元格的属性,使其行为类似于下拉列表,或者作为(可编辑)下拉列表没有元素。后者看起来很像一个我可以忍受的文本框,而且它不涉及更改单元格的类型。

0 投票
3 回答
6081 浏览

c# - 将默认值设置为 DataGridViewComboBoxCell

即使组合框填充了许多值,默认情况下组合框也会显示空白字段

我也尝试了以下方法,但它仍然显示空白文本。

0 投票
1 回答
526 浏览

.net - .NET DataGridViewComboBoxCell 失去焦点时的行为

我有一个绑定到 DataTable 的 DataGridView。绑定完成后,我手动搜索 DGV 的所有单元格,并将单个常规 DGV 单元格替换为 DataGridViewComboBoxCell 实例。单元格绑定了自己的数据源。

我遇到的问题是,当用户在 DataGridViewComboBoxCell 单元格中进行选择并离开它时,它会将其显示的字符串从 DisplayMember (类似于“Warehouse #23”)更改为其底层 ValueMember(类似于 23) . 当重新输入单元格时,它会切换回显示 DisplayMember(等等)。除此之外,一切正常(GUI可用,可以选择,只有显示有问题)。

DataGridViewComboBoxCell 对象上是否有控制此行为的属性?或者这种行为是否来自我在常规 DGV 列中手动植入 DataGridViewComboBoxCell ?

哦,我这样做的原因是我需要一种简单的方法来构建动态用户输入 GUI。可以简单地以编程方式构造一个 DataTable 并将其插入 DGV。DGV 构建“GUI”并使其可用。您可以使用一列作为标题,一列用于用户输入。我现在不仅需要标准文本单元(基本上是文本框),还需要面向选择的组合框单元。

0 投票
1 回答
643 浏览

.net - 如何在 DataGridView 的 TextBoxCell 列中设置单个 ComboBoxCell?

我有DataGridView两列定义如下:

我需要位置 Col=1, Row=0 的单元格是 aComboBox而不是 a TextBox。所以我尝试添加以下代码但它不起作用,编辑控件仍然是一个文本框。

你知道我该如何解决这个问题吗?

0 投票
1 回答
5353 浏览

datagridview - 如何在 CellFormatting 事件中更改 DataGridViewComboBoxCell 的颜色?

这适用于文本列,但对于组合框列没有区别。如果有更简单的方法可以做到这一点,我会尽快不让所有者绘制控件。

谢谢,斯派克

0 投票
4 回答
10145 浏览

c# - 如何让 DataGridView 组合框一键显示其下拉列表?

在我将“EditOnEnter”设置为 true 后,DataGridViewComboBoxCell如果我不单击组合框的向下箭头部分,仍然需要单击两次才能打开。

任何人都知道如何解决这个问题?我有自己DataGridView使用的类,所以我可以通过一些我希望的智能事件处理程序轻松地在系统范围内解决这个问题。

谢谢。

0 投票
1 回答
1620 浏览

c# - DataGridViewComboBoxCell 的奇怪问题,尝试自动提交更改

所以我的目标是一旦用户点击下拉列表中的项目,单元格将自动调用 EndEdit()。最奇怪的是,下面的代码将在我下拉并从中选择值的第 2-n 个 ComboBoxesCells 上工作,但绝不是第一个。有什么我在这里想念的吗?

如果不明显,应该在这里添加我从 DataGridView 继承的

0 投票
1 回答
785 浏览

.net - 如何防止用户将数据输入 DataGridViewComboBoxCells?

我有一个使用许多 DataGridView 控件的项目。大多数单元格都是DataGridViewTextBoxCell 的说服。我这样声明我的控件:

稍后我指定它们是 DataGridViewTextBoxControls 还是 DataGridViewComboBoxCells,如下所示:

我的代码中的任何地方都不需要用户在组合框中输入自己的值。也就是说,它们要么是硬编码的,要么是从应用程序内的其他数据中收集的值。

目前,用户可以突出显示如上所示定义的组合框控件并开始键入他们喜欢的任何内容。例如,我有一个组合框,它为用户提供 1 到 9 之间的整数选择。我可以突出显示组合框单元格并输入“Hello,World!”。如果我愿意。

禁用此功能需要什么?我确定有一处房产,但我还没有找到它。我在 Internet 上进行了搜索,发现只能将用户输入的值添加到列表和数据绑定教程流中。

先感谢您!C

0 投票
4 回答
19207 浏览

c# - System.ArgumentException:DataGridViewComboBoxCell 值无效

以编程方式将数据分配给的有效方法是什么DataGridViewComboBoxCell