问题标签 [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.
winforms - 对象引用未设置为 DataGridView 的 InitializeEditingControlValue 中的对象实例
我有一个 DataGridView,在一个包含项目列表的 ComboBox 单元格内。当我们点击其中一个项目时,我会在我的主窗口中显示这些“项目”的内容。但是,如果用户单击小箭头来选择一个项目,但最后没有选择任何项目,我得到一个 NullReferenceException(对象引用未设置为对象的实例)。
我在 Google 上发现了一些东西,说我需要实现自己的 ComboBoxCell(或列),但我发现的唯一例子比我得到的更糟糕。
为了您的信息,我在 DataBindingComplete 中填充了 ComboBoxCell 的项目,我将值放在了 RowPrePaint 中。是的:每个 ComboBoxCell 都有不同的“项目”列表。
请帮助找到解决方案。
PS如果有人能解释我们为什么我有这个问题......
c# - DataGridViewComboBox 索引更改事件故障
希望有人可以帮助解决这个问题。我的代码中有一个无法修复的错误。我正在使用带有 DataGridView 控件的选定索引事件处理进行测试。
我创建了两列:-
第 0 列是DataGridViewTextBoxColum
第 1 列是DataGridViewComboBoxColumn
我给了我的ComboBox
Column 一个数据源,它很小DataTable
,由两个Username
&列组成UserID
。
显示成员设置为用户名列,我将用户 ID 列设置为值成员。
我要做的只是第 0 列( ),在索引更改事件中DataGridViewTextBox
填充UserID
( ) 。ValueMember
DataGridViewComboBoxColumn
当我第一次加载程序时它工作正常。事件IndexChanged
触发没有任何错误。但是,如果我尝试ComboBox
在新行中选择 ,它会从上一行清除组合框中的值,然后抛出空引用异常。
我列出了下面的代码并突出显示了它失败的代码行:-
vb.net - Datagridview 绑定到对象 - 使新行显示为空白
我有一个 Datagridview,它根据用户在列表框中所做的选择来更改其内容。DGV 由 2 个组合框(国家、产品)和 1 个文本框(数量)组成。
我创建了一个由 3 个整数组合而成的类。此类用作列表类型,它是 DGV 的数据源。还有另一个包含先前列表的列表,所以我有一个数据源列表。
DGV 的数据源是一个 BindingSource,只要触发 listBox 的 SelectedIndex,它就会发生变化。
每当将新行添加到 DGV 时,就会出现我的问题:我使用调用类的构造函数的 BindingSource.AddNew,但它必须为类中的每个项目分配值。这样,每当我单击 DGV 中的任何单元格时,我都不会得到空白行。而且,当BS改变然后返回时,又增加了一行。
我想要的是一个空白行 - 空的组合框和文本框。
谢谢你的帮助!
班上:
创建一个新的内部列表:
SelectedIndexChanged 事件:
sql-server - 提交到数据库时,datagridview 组合框列是否会影响速度?
我有一个名为 frmTransaction 的表单,它有 txtTranNo、txtCustCode、dtbDate、txtRemarks、txtTotalAmount,还有一个名为 dtgDetail 的 datagridview。
在 dtgDetail 中,我有 cTranNo、nLineID、cProductID、nQty、nPrice 和 nAmount 列。
cProductID 是一个组合框列,它有一个数据成员 cProduct 和一个显示成员 cDescription,因此当它运行时,用户将看到产品名称而不是其产品代码。
但是我的产品有 2000 条记录,当我加载表单时速度很慢。将其保存/提交到我的数据库时也很慢。
我认为 cProduct 列与我的表单速度有关。这是真的?我怎样才能加快速度?
编辑
我可以展示代码,但如果我只是解释我的代码是如何工作的,它就不会那么混乱了。在我的设计时,我的 datagridview 有空列。datagridview 的名称也是将要绑定的表的名称,当我运行它时,它会创建它的列,该列会根据表的模式自动绑定。我还有一个标志,告诉程序该字段是组合框列还是纯文本框。如果它是一个组合框列,它将生成一个 sql 脚本,并运行并将结果保存到一个数据表中,该数据表将作为组合框的数据源。组合框列的数据成员和显示成员也由标志确定。
建议我不要在我的脚本中为我的组合框列的数据源设置任何条件。
编辑 - 12 年 5 月 12 日 我尝试在将我的 sql 数据源绑定到 datagridview 组合框列时对其进行过滤......我会说我有助于加快我的表单。我现在的问题是当我在我的 datagridview 中添加不包含在组合框中的新记录时。例如,我将把这个脚本绑定到我的datagridview,“select ID,Desc from product where ID in (1,2,3,4,5)”。当我在 ID = 6 的 datagridview 中插入新记录/项目/产品时,它不会显示描述 datagridview ...
backbone.js - Backbone.js 如何在表格列表中选择组合框选项?
我在列表表模板中添加了一个组合框
所以我的 chk 模型是;
但现在我收到这样的错误;
那我该怎么办?
c# - DataGridView 与组合框列显示 System.Data.DataRowView 而不是 DisplayMember
我正在使用 C# 4.0 WinForms。我有一个 DataGridView,它的所有列都在设计器中设置。“房间”列是 DataGridViewComboBoxColumn 列。
所有单元格都显示正确的信息,包括房间列。但是,当我单击 Room 的 DropDown 时,列表中的项目会显示一定数量的行,这些行显示 System.Data.DataRowView 而不是 DisplayMember 属性的实际值。
我的代码如下所示:
我已经定义了一个 RoomType 类,如下所示:
如果我更改数据库中某个项目的房间,它会按预期正确显示在 GridView 组合框列上。
我已经设置了列的 DisplayMember 和 ValueMember。但是当我下拉下拉菜单来更改值时,行数是正确的,但它们似乎忽略了它们的 DisplayMember 属性。我已经尝试了很长一段时间来弄清楚我做错了什么。我花了好几个小时在 SO 上查看所有类似的问题,并尝试了几乎所有的东西。
c# - 从 DataGridViewComboBoxColumn 为 DataGridView 的源的基础属性赋值
我有一个分配给 CustomerPricing 的 BindingList 的 datagridview,在 CustomerPricing 中有诸如产品名称、价格、所需数量以及该项目是否应纳税等字段。在 datagridview 中,我有一个 DataGridViewComboBoxColumn,它的数据源是一个产品列表。产品具有名称、价格以及是否应纳税的字段。
客户的愿望是,一旦选择了产品,价格值会自动显示在 DataGridView 中,并且从开发人员的角度来看,Taxable 属性也会更新(不会显示)。
有谁知道如何做到这一点?我尝试使用 EditControlShowing 事件并将值直接分配给单元格,但这无助于更新未显示的基础对象的属性。我做了一个 hack,它可以工作,但速度很慢,只有在没有更可接受的方式时才愿意使用。
谢谢
winforms - DataGridViewComboBoxColumn 设置选中索引
我只是不能让它工作。我在 winforms 中有一个 datagridview,在我的这一列中是一个 DataGridViewComboBoxColumn。
在我的构造函数中,我像这样设置它
它实际上运行良好,只是在我想要的下拉框中没有选择任何内容。我已经用谷歌搜索了这个,例如尝试了这种方法: http: //goo.gl/kBy8W但没有成功,因为 EditingControlShowing 仅在我单击该框时发生,而不是在它第一次出现时发生(因此我可以设置选定的索引一旦它被点击但那不好)。CellFormatting 版本至少会更改值,但它只是将一个字符串放在那里,而不是我的数据源中的第一个索引。
我也试过这个
这似乎有效,但是当我在下拉列表中选择第一个索引时(所以下拉下拉列表,然后选择第一个索引,然后取消选择单元格)我从 ParseFormattedValue 收到一个错误,它说它不能将“值”转换为系统.字符串。
这似乎是在正确的轨道上,但我无法让它工作:http: //goo.gl/VevA3
c# - 如何在 DataGridView 中对组合框列进行数据绑定?
我的情况如下:
我挑战了一个名为“学生”的课程,它很简单,如下所示:
然后我定义了一个List<Student>
叫做studentList
.
我怎样才能将它studentList
与 a结合起来DataGridView
?中的第二列DataGridView
应该是一个组合框,列出学生的所有科目。
c# - 更改 Telerik GricViewComboBox 追加列表字体
我有一个带有组合框列的 Telerik GridView,同时在这个组合框中过滤一个下拉的附加列表。
和下图一样...
所以我想让附加列表的字体更大。
怎么做?